匯編語言程序設計(第3版)微課版 課件 第1章 匯編語言基礎知識_第1頁
匯編語言程序設計(第3版)微課版 課件 第1章 匯編語言基礎知識_第2頁
匯編語言程序設計(第3版)微課版 課件 第1章 匯編語言基礎知識_第3頁
匯編語言程序設計(第3版)微課版 課件 第1章 匯編語言基礎知識_第4頁
匯編語言程序設計(第3版)微課版 課件 第1章 匯編語言基礎知識_第5頁
已閱讀5頁,還剩35頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第一章匯編語言基礎知識1.1匯編語言簡介1.2計算機中數據的表示1.1匯編語言簡介1.1.1機器語言與匯編語言1.1.2匯編語言的組成1.1.3為什么要學習匯編語言1.1.1機器語言與匯編語言機器指令:cpu能直接識別并遵照執行的指令,用二進制編碼表示,由操作碼,操作數組成,編碼只含二進制0或1。機器語言:用二進制編碼組成的機器指令的集合和一組使用機器指令的規則。匯編語言:對機器指令中的操作碼用英文單詞的縮寫描述(助記符),對操作數用標號、變量、常量描述。

用匯編語言編寫的程序稱為匯編源程序。

但是,匯編語言源程序要翻譯成機器語言程序才可以由計算機執行。這個翻譯的過程稱為“匯編”,這種把匯編源程序翻譯成目標程序的語言加工程序稱為匯編程序。

1.1.2匯編語言的組成匯編語言有以下三類指令組成:匯編指令:機器碼的助記符,有對應的機器碼。它是匯編語言的核心。偽指令:沒有對應的機器碼,由編譯器執行,計算機并不執行。其他符號:如+、-、*、/等,由編譯器識別,沒有對應的機器碼。

1.1.3為什么要學習匯編語言匯編語言程序是用符號指令寫成的,本質上還是機器語言,與具體機機型的硬件密切相關,可以直接有效地控制計算機硬件,程序運行速度快,程序短小精悍,占用內存少,在某些特殊應用場合更能發揮作用。如:智能化儀表,家用電器,實時控制系統,單片機控制,病毒研究等。學習匯編語言是從根本上認識和理解計算機工作過程的最好方法。匯編程序與匯編源程序的區別是什么?匯編源程序是指用匯編語言編寫的程序,而匯編程序特指將匯編源程序匯編成目標文件的編譯程序。正確不正確AB提交單選題15分1.2計算機中數據的表示1.2.1不同進位計數制及其相互轉換1.2.2二進制數和十六進制數的運算1.2.3帶符號數的表示1.2.4補碼的加法和減法1.2.5無符號數的表示1.2.6字符的表示1.2.7基本邏輯運算1.2.1不同進位計數制及其相互轉換1.進位計數制對于任意一個進位計數制,如果用R表示基數,那么任何一個數S均可用如下多項式表示:

S=knRn+kn-1Rn-1+…+k0R0+k-1R-1+k-2R-2+…+k-mR-m

十進制數:423.5=4×10^2+2×10^1+3×10^0+5×10^-1

各位權值10^k

二進制數:101101(B)=1×2^5+1×2^3+1×2^2+1×2^0=45(D)

各位權值2^k

十六進制數:5F(H)=5×16^1+15×16^0(D)各位權值16^k

在書寫不同進位計數制數時,常常在尾部用一個字母來表示該數是什么進位計數制的數。結尾用B(2進制數)、O(8進制數)、D(10進制數)、H(16進制數)。缺省為十進制數。例如712O、9198D、10010B、BE49H等等。

2.各種數制間的相互轉換例如:13.8125D=

1101.1101B=D.DH

二進制數轉換為十進制數方法:各位二進制數碼乘以對應的權之和例:1.1N=101101.1B=1×2^5+1×2^3+1×2^2+1×2^0+1×2^-1=45.5D十六進制數轉換為十進制數方法:各位十六進制數碼乘以對應的權之和例:1.2

N=5FH=5×16^1+15×16^0=80+15=95D

十進制數轉換為二進制數(1)降冪法:先寫出小于此數的各位二進制權值,然后再求和。(適用于數值不大的數)例:1.3

求N=13.5D的二進制數。小于此數的各位二進制權值為:

84210.5

13.5D=8+4+1+0.5=1101.1B

100001000001+0.11101.1

十進制數轉換為二進制數(2)除法:不斷除以2,計下余數,直到商為0為止。(僅適用于整數部分)例:1.4求N=13D的二進制數。13/2=6余1(b0)6/2=3余0(b1)3/2=1余1(b2)1/2=0余1(b3)13D=b3b2b1b0=1101B對于十進制數的小數部分除了可以使用降冪法也可采用乘法,即不斷乘2,并計下整數,而小數部分再乘2,直到結果為0為止。并非所有的十進制小數都能用二進制完全表示,可按需要取一定精度即可。例:1.5求N=0.625D的二進制數。0.625×2=1.25(b-1=1)0.25×2=0.5(b-2=0)0.5×2=1.0(b-3=1)N=0.625D=b-1b-2b-3=0.101B

十進制數轉換為十六進制數(1)降冪法:先寫出小于此數的各位十六進制權值,然后再求和。(適用于數值不大的數)例:1.6求N=95D的十六進制數。小于此數的各位十六進制權值為:161顯然應選16×5,再選1×F,所以N=95D=80+15=16×5+1×F=5FH

十進制數轉換為十六進制數(2)除法:不斷除以16,計下余數,直到商為0為止。(僅適用于整數部分)例:1.7求N=95D的十六進制數。95/16=5余15(h0)5/16=0余5(h1)N=95D=h1h0=5FH

對于十進制數的小數部分除了可以使用降冪法也可采用乘法,即不斷乘16,并計下整數,而小數部分再乘16,直到結果為0為止。并非所有的十進制小數都能用十六進制完全表示,可按需要取一定精度即可。

二進制數和十六進制數的相互轉換直接轉換,每四位一組,整數從低位開始,小數從高位開始,不足位補0。例:1.8N=1011111.11(B)=01011111.1100(B)=5F.C(H)

把十進制數67轉換為二進制數和十六進制數。1000011,431000101,451000011,411000101,43ABCD提交單選題15分把十進制數123轉換為二進制數和十六進制數。1111101,7D1111011,7B1111100,7C1111111,7FABCD提交單選題15分把二進制數01101101轉換為十六進制數和十進制數。6D,1076C,1076D,1096B,107ABCD提交單選題15分1.2.2二進制數和十六進制數運算二進制運算加法規則:0+0=01+0=10+1=11+1=0(進位1)乘法規則:0×0=01×0=00×1=01×1=1

十六進制數運算原則:逢十六進一

1.2.2二進制數和十六進制數運算例1.9 43A5+5A349DD9例1.10 5A34-43A5168F1.2.2二進制數和十六進制數運算例1.11 2A34×0025D304

+546861984(H)1.2.3帶符號數的表示帶符號數最高位是符號位。正數的符號位為0,負數的符號位為1。表示方法:原碼、補碼、反碼。例1.12用8位二進制來表示,求[-3]補。先寫出+3:00000011各位取反為:11111100最低位加1為:11111101[-3]補=11111101,或用十六進制表示,[-3]補=FDH數的補碼表示

定義:

(X>=0時)[X]補=符號+|X|------(1)

(X<0時)[X]補=2^n-|X|=(2^n-1-|X|)+1---(2)即X<0時:

[X]補+|X|=2^n數的補碼具體操作是:正數不變,負數則用絕對值取反+1例1.13依據補碼定義寫出以下各數的補碼,以8位二進制表示。[-1]補=256-1=100000000-1=11111111,直接由(2)式得到。[-127]補=2^8-127=(256-1-127)+1=(11111111-01111111)+1=10000000+1=10000001例1.14識別以下各數的十進制值。[a]補=11111111,求補后為00000001=[1]補,所以,a=-1[b]補=10000000,求補后為10000000=[128]補,所以,b=-128[c]補=10000001,求補后為01111111=[127]補,所以,C=-1271.2.4補碼的加減法加法規則:[X+Y]補=[X]補+[Y]補減法規則:[X-Y]補=[X]補+[-Y]補例:1.158位補碼的加法運算十進制 二進制

25 00011001+(-32)+11100000

-7111110013200100000+(-25)+11100111700000111 1↙

根據補碼定義把十進制數-24表示為8位二進制補碼。[10011000]

補[11100111]補[11101000]補ABC提交單選題15分此

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論