匯編語言課件第1章_第1頁
匯編語言課件第1章_第2頁
匯編語言課件第1章_第3頁
匯編語言課件第1章_第4頁
匯編語言課件第1章_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第一章數(shù)值及其編碼表示1.1二進(jìn)制數(shù)值的編碼表示1.2二—十進(jìn)制的編碼表示1.3定點(diǎn)數(shù)與浮點(diǎn)數(shù)1.4非數(shù)值信息的表示習(xí)題一1.1二進(jìn)制數(shù)值的編碼表示1.1.1原碼表示

原碼(TrueForm)是比較容易理解的一種數(shù)值編碼。原碼用0表示正號,用1表示負(fù)號。原碼的碼值等于真值的絕對值。根據(jù)原碼的表示方法可知:[+0]原=000…0,[-0]原=100…0。就是說真值0在原碼表示中不唯一,換句話說[X]原與真值X不是一一對應(yīng)的。由真值轉(zhuǎn)換為原碼,則將正號用0表示,負(fù)號用1表示,數(shù)值位照寫即可。由原碼轉(zhuǎn)換為真值,則將符號位0寫成+,1寫成-,數(shù)值位不變,可簡單表示為:原碼表示簡單、直觀,但用原碼進(jìn)行加減運(yùn)算比較復(fù)雜。下面介紹應(yīng)用更為廣泛的另一種編碼——補(bǔ)碼。1.1.2補(bǔ)碼表示

與原碼相同,補(bǔ)碼(Two'sComplement)也用0表示正號,用1表示負(fù)號。當(dāng)真值X≥0時,補(bǔ)碼的碼值等于真值X;當(dāng)真值X<0時,補(bǔ)碼的碼值是將真值X各數(shù)值位按位取反,末位加1。根據(jù)補(bǔ)碼的表示方法可推知補(bǔ)碼具有以下特點(diǎn):(1)零的補(bǔ)碼是唯一的,即[0]補(bǔ)=000…0,換句話說,[X]補(bǔ)與X是一一對應(yīng)的,在這點(diǎn)上補(bǔ)碼優(yōu)于原碼。(2)根據(jù)補(bǔ)碼的表示方法可推知補(bǔ)碼與真值、原碼之間的轉(zhuǎn)換關(guān)系。當(dāng)真值X≥0時,正數(shù)的補(bǔ)碼與原碼形式相同,碼值等于真值,由真值求其補(bǔ)碼和原碼,只需將“+”用“0”表示,數(shù)值位照寫即可,反過來由補(bǔ)碼或原碼求真值,將符號位(最高位)的“0”寫成“+”,數(shù)值位也照寫即可求得,可簡單表示為:當(dāng)真值X<0,即將負(fù)數(shù)的補(bǔ)碼轉(zhuǎn)換為真值時,只需將符號位1寫為負(fù)號(-),數(shù)值各位按位取反,末位加1即可,簡單表示如下:因?yàn)樵a體現(xiàn)的是絕對值,除了用“1”表示符號“-”以外,數(shù)值位與真值相同,故可將負(fù)數(shù)補(bǔ)碼與原碼之間的轉(zhuǎn)換關(guān)系表示為:例1.1

已知真值X1=+0.1011,X2=0,X3=-0.1101,若用5位二進(jìn)制數(shù)表示,求其原碼及補(bǔ)碼。

解:

[X1]原

=0.1011 [X1]補(bǔ)

=0.1011

[X2]原

=0.0000 或[X2]原

=1.0000[X2]補(bǔ)=0.0000

[X3]原

=1.1101 [X3]補(bǔ)

=1.0011

例1.2

已知整數(shù)補(bǔ)碼[X1]補(bǔ)

=01010,[X2]補(bǔ)

=10101,[X3]補(bǔ)

=10000,最高位代表符號,若用5位二進(jìn)制數(shù)表示,求其真值及原碼。

解:真值X1=+01010=+10D [X1]原

=01010

真值X2=-01011=-11D [X2]原

=11011

真值X3=-10000=-16D [X3]原超出表示范圍(3)補(bǔ)碼的算術(shù)右移。算術(shù)右移就是除以2的運(yùn)算。由[X]補(bǔ)求 的簡便方法是把[X]補(bǔ)連同符號位在內(nèi)各位右移一位,同時符號位保持不變,可簡單表示為:例1.3

已知[X1]補(bǔ)

=0.1110,[X2]補(bǔ)

=1.0110,[X3]補(bǔ)

=1.0000,若用5位二進(jìn)制數(shù)表示,求解:

(4)補(bǔ)碼的算術(shù)左移。算術(shù)左移就是乘以2的運(yùn)算,與算術(shù)右移不同,左移有可能產(chǎn)生溢出。由[X]補(bǔ)求[2X]補(bǔ)的簡便方法是將[X]補(bǔ)的各位左移一位,末位補(bǔ)0,可簡單表示為:

例1.4

已知補(bǔ)碼[X1]補(bǔ)

=0.0101,[X2]補(bǔ)

=1.0101,若用5位二進(jìn)制數(shù)表示,求[2X1]補(bǔ)

=?[2X2]補(bǔ)

=?

解:

[2X1]補(bǔ)

=0.1010 未溢出[2X2]補(bǔ)

=10.1010 溢出(5)補(bǔ)碼的符號位擴(kuò)展。符號位的擴(kuò)展只對定點(diǎn)整數(shù)補(bǔ)碼而言,例如如何將一個8位表示的整數(shù)補(bǔ)碼擴(kuò)展為16位的整數(shù)補(bǔ)碼,而其真值不變。將整數(shù)補(bǔ)碼擴(kuò)大n位,并使其真值不變,只需將[X]補(bǔ)的符號位向左復(fù)制n位即可。

例1.5

已知[X1]補(bǔ)

=0101,[X2]補(bǔ)=1010。將其擴(kuò)展一個字節(jié)。

解:[X1]補(bǔ)

=00000101

[X2]補(bǔ)

=11111010要將n位純小數(shù)補(bǔ)碼變?yōu)?n位,只需在末尾添加n個“0”即可。1.2二—十進(jìn)制的編碼表示十進(jìn)制數(shù)的基是10,它不是2的整數(shù)冪,必須用二進(jìn)制數(shù)對十進(jìn)制數(shù)進(jìn)行編碼。一位十進(jìn)制數(shù)由0~9共10個不同的數(shù)字字符表示,需要用四位一組的二進(jìn)制來編碼。而24=16>10,這就使得二—十進(jìn)制有多種編碼方案,二—十進(jìn)制編碼簡稱為BCD碼(Binary-CodedDecimal)。二—十進(jìn)制編碼又可分為有權(quán)碼和無權(quán)碼兩種。有權(quán)碼與無權(quán)碼都有多種編碼方式。目前在計(jì)算機(jī)中應(yīng)用最廣泛的有權(quán)碼是8421碼,應(yīng)用較廣泛的無權(quán)碼有余三碼。這兩種編碼與十進(jìn)制數(shù)碼的對應(yīng)關(guān)系如表1-1所示。表1–1二—十進(jìn)制編碼對應(yīng)關(guān)系

8421碼4位二進(jìn)制的權(quán)依次為8,4,2,1,并由此得名。

8421碼中有效碼是0000~1001,1010~1111,共6種,為非法碼,其編碼簡單,每個碼相當(dāng)于十進(jìn)制數(shù)碼所對應(yīng)的二進(jìn)制數(shù)。從表1-1中可看到余3碼中任何一個編碼的二進(jìn)制數(shù)都比它對應(yīng)的十進(jìn)制數(shù)多3,故稱為余3碼。余3碼的非法碼也有6個,即0000,0001,0010,1101,1110,1111。1.3定點(diǎn)數(shù)與浮點(diǎn)數(shù)

1.3.1定點(diǎn)數(shù)

定點(diǎn)數(shù)是指小數(shù)點(diǎn)位置固定不變的數(shù)。小數(shù)點(diǎn)的位置通常只有兩種約定,小數(shù)點(diǎn)約定在最低數(shù)位右面的數(shù)稱為定點(diǎn)整數(shù),可用來表示一個純整數(shù)。小數(shù)點(diǎn)約定在符號位右面,最高數(shù)位左面的數(shù)稱為定點(diǎn)小數(shù),可用來表示一個純小數(shù)。無符號定點(diǎn)整數(shù),即正整數(shù),不需設(shè)符號位,所有各數(shù)位都用來表示數(shù)值大小,并約定小數(shù)點(diǎn)在最低數(shù)位右面。在定點(diǎn)整數(shù)或定點(diǎn)小數(shù)的表示法中,參加運(yùn)算的數(shù)以及運(yùn)算的結(jié)果必須在該定點(diǎn)數(shù)所能表示的數(shù)值范圍之內(nèi),否則“溢出”。當(dāng)發(fā)生溢出時,CPU中的狀態(tài)標(biāo)志寄存器FR中的溢出標(biāo)志位OF置位(即1→OF),并轉(zhuǎn)入溢出處理。1.3.2浮點(diǎn)數(shù)

定點(diǎn)數(shù)的表示比較單一,要么純整數(shù),要么純小數(shù),表示數(shù)的范圍比較小,運(yùn)算過程中也很容易發(fā)生溢出。計(jì)算機(jī)中也引入了類似于十進(jìn)制的科學(xué)標(biāo)識法(如1.23456×104)來表示二進(jìn)制實(shí)數(shù),這種方法用來表示值很大或很小的數(shù),也可用它來表示既有整數(shù)又有小數(shù)的數(shù)。這種表示法稱為浮點(diǎn)表示法,其小數(shù)點(diǎn)的實(shí)際位置隨指數(shù)(階)的大小而浮動。浮點(diǎn)數(shù)由兩部分組成:階碼E(Exponent)和尾數(shù)M(Mantissa)。浮點(diǎn)數(shù)表示的數(shù)值為M×RE。若尾數(shù)M為m位,階碼E為e位,則典型的浮點(diǎn)數(shù)格式如圖1.1所示。圖1.1浮點(diǎn)數(shù)格式圖中,E是階碼,即指數(shù),為帶符號定點(diǎn)整數(shù),可用補(bǔ)碼表示。Es為階符,表示階的正負(fù)。階為正,小數(shù)點(diǎn)實(shí)際位置向右浮動,階為負(fù),小數(shù)點(diǎn)實(shí)際位置向左浮動。

M是尾數(shù),是帶符號的定點(diǎn)純小數(shù),常用補(bǔ)碼表示。Ms是尾數(shù)的符號位,安排在最高位,表示該浮點(diǎn)數(shù)的正負(fù)。小數(shù)點(diǎn)的位置約定在階碼最低位的右面,尾數(shù)最高數(shù)值位的左面,如圖1.1所示。

R是階碼的底,也就是尾數(shù)M的基(Radix)。一般基定為2,它是隱含約定的。浮點(diǎn)數(shù)的表示范圍主要由階碼的位數(shù)決定,精度則主要由尾數(shù)的位數(shù)決定。1.4非數(shù)值信息的表示1.4.1邏輯數(shù)據(jù)

邏輯數(shù)據(jù)是用一位二進(jìn)制數(shù)來表示的。因?yàn)橐晃欢M(jìn)制數(shù)只具有兩種可能的值:0或1,可以直接表示事物相對立的兩個方面。比如一個事件成立用“1”表示,不成立則用“0”表示,另外還有“真”和“假”、“是”和“否”、“有”和“無”,都可以看作邏輯數(shù)據(jù)。邏輯數(shù)據(jù)在計(jì)算機(jī)中雖然也具有“0”或“1”的形式,但是邏輯數(shù)據(jù)的“0”和“1”代表的是邏輯概念,完全沒有“0”和“1”的數(shù)值概念,而且邏輯數(shù)據(jù)的取值只有“0”和“1”兩個值,不可能再有其它值。邏輯數(shù)據(jù)表達(dá)的是事物的邏輯關(guān)系,而數(shù)值數(shù)據(jù)表達(dá)的是事物的數(shù)量關(guān)系。計(jì)算機(jī)便是建立在與、或、非等邏輯運(yùn)算基礎(chǔ)之上的。計(jì)算機(jī)通過對邏輯數(shù)據(jù)的比較、判斷、運(yùn)算,可以完成邏輯推理、定理證明等一系列復(fù)雜的工作。1.4.2字符編碼ASCII

計(jì)算機(jī)中除了使用數(shù)字外,還大量使用英文字母及一些符號,這些符號稱為“字符”。目前使用最廣泛的字符編碼方案是美國國家信息交換標(biāo)準(zhǔn)代碼(AmericanStandardCodeforInformationInterchange),簡稱ASCII碼。ASCII碼選用了128個常用字符,用7位二進(jìn)制編碼,如果再加上一位奇偶校驗(yàn)位,則正好是用一個字節(jié)表示一個字符的ASCII碼。表1-2給出了128個字符與其ASCII碼的對應(yīng)關(guān)系,表中的ASCII碼用十六進(jìn)制碼表示。從表1-2中可以看出,ASCII碼包括0~9共10個數(shù)字字符(其值分別為30H加上相應(yīng)的數(shù)字值),它與數(shù)據(jù)的二—十進(jìn)制編碼是兩回事,26個大寫英文字母(其值分別為40H加上字母的順序號),26個小寫英文字母(其值分別為60H加上字母的順序號),一些通用符號和一些控制字符。這些字符的種類可滿足各種程序設(shè)計(jì)語言、控制命令、西文文字等的需要。我國原電子部規(guī)定的一套部標(biāo)字符編碼與表1-2基本相同。在計(jì)算機(jī)中,一個字符的ASCII碼占用主存儲器的一個字節(jié)單元;如果是字符序列,則占用主存多個連續(xù)的字節(jié)單元。通用鍵盤的大部分鍵,與最常用的ASCII編碼的字符相對應(yīng)。當(dāng)敲擊鍵盤上某字符鍵時,由譯碼電路產(chǎn)生與該字符對應(yīng)的ASCII碼。計(jì)算機(jī)處理的結(jié)果也常以ASCII碼形式輸出,供顯示與打印使用。習(xí)題一

1.1分別寫出下列各十進(jìn)制數(shù)的原碼和補(bǔ)碼,用8位二進(jìn)制小數(shù)表示(含一位符號位):

1.2分別寫出下列各十進(jìn)制整數(shù)的原碼和補(bǔ)碼,用8位二進(jìn)制整數(shù)表示(含一位符號位)。

-128,+127,-127,105,-64,-1

1.3若認(rèn)為小數(shù)點(diǎn)約定在8位二進(jìn)制數(shù)的最右端(整數(shù)),試分別寫

溫馨提示

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

評論

0/150

提交評論