微型計算機原理基礎_第1頁
微型計算機原理基礎_第2頁
微型計算機原理基礎_第3頁
微型計算機原理基礎_第4頁
微型計算機原理基礎_第5頁
已閱讀5頁,還剩47頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

微型計算機原理與接口技術第1章計算機基礎1.1

計算機中的數制2數制數的表示方法一、常用數制十進制二進制十六進制BCD碼1.

十進制3兩個重要概念基數:就是進位計數制的每位數上可能有的數碼的個數權:是指一個數值的每一位上的數字的權值的大小例:5

610-1

10-21

2

3 4

.權:

103

102

101

100特點:基數為10,每一位有0~9這10種數碼高位權是低位權的10倍加減運算法則:逢十進一,借一當十2.

二進制(1101.11)2232221202-12-2例:權:特點:每位代碼非0即1,即基數為2高位權是低位權的2倍加減運算法則:逢二進一,借一當二例:(

1

0 1

)2+

(

1

1 1

)2(

1

1

0 0

)2(

1

1

0 1

)2- (

1

0

1 0

)2(

0

0

1 1

)243.

十六進制5人們最常用的是十進制,但在計算機中為了物理實現的方便,采用的是二進制人們為了書寫閱讀方便,又常常采用十六進制數來表示二進制數十六進制的基數是16,權值為160、161、…,基數數碼有0、1、…、9、A、B、C、D、E、F十六進制用H表示,二進制數用B表示,十進制用D表示(或者不用)十六進制數:62H、3F2AH二進制數:1101B、10000001B十進制數:2430D、36D十六進制與二進制的關系每4位二進制數可用1位十六進制數表示64位二進制數等值的一位十六進制數4位二進制數等值的一位十六進制數00000100080001110019001021010A001131011B010041100C010151101D011061110E011171111F例1:(10,1001,1010,1111)2

=(29AF)16B

3

H例2:

(

2

9

A

F

)16權:

163

162

161

160特點:每位代碼:0~9,A~F高位權是低位權的16倍加減運算法則:逢十六進一,借一當十六例:3

9H45H+7

AH-26H1

F

H74.BCD碼8計算機中采用二進制,但二進制書寫、閱讀不便,所以在輸入輸出時人們仍習慣使用十進制采用二進制數對每一位十進制數字進行編碼來表示一個十進制數,這種數叫做BCD碼BCD碼有多種形式,最常用的是8421BCD碼,它是用4位二進制數對十進制數的每一位進行編碼,這4位二進制碼的值就是被編碼的一位十進制數的值4位二進制數等值的1位BCD碼數等值的1位十進制數4位二進制數等值的1位BCD碼數等值的1位十進制數0000000001000100080001000111001100190010001021010非法BCD碼001100113101101000100411000101010151101011001106111001110111711119BCD碼在計算機中的存儲分為緊湊型(組合型)和非緊湊型(非組合型)兩種例:緊湊型BCD碼:37

=

0011,

0111B非緊湊型BCD碼:37

=

0000,

0011B0000,

0111B10二、數制轉換11二、八、十六進制數→十進制數算法:每位的代碼與該位的權相乘,再累加求和例1:例2:1101.11B=

1×23

+

1×22

+

0×21

+

1×20

+

1×2-1

+

1×2-2=

8

+

4

+

0

+

1

+

0.5

+

0.25=

13.7529AFH=

2×163

+

9×162

+

10×161

+

15×160=

8192

+

2304

+

160

+

15=

106712.

二進制數→十六進制數12算法:四位二進制數為一組,每組用等值的十六進制代換例:101011.11

B=10,1011.1100

B

=

2B.C

H十六進制數→二進制數算法:一位十六進制數用等值的四位二進制數代換例:17E.58

H

=

0001,0111,1110.0101,1000B4.

十進制數→二進制數①十進制整數→二進制數算法:除2取整,直到商為零為止,倒排2

112

52

22

10……余1……余1……余0……余111

=

1011B13②十進制數純小數→二進制數算法:乘2取整,直到乘積的小數部分為0時止,順排0.81252××××1.62521.25020.521.00.8125

=

0.1101B14③十進制帶小數→二進制數15整數、純小數分別計算,再合并例1:11.8125=

?

B 11.8125

=

11

+

0.8125=

1011B

+

0.1101B=

1011.1101B例2:設X=01010110B,Y=5

AH,問:X和Y誰大?∵

X

=

01010110B

=

86Y

=

5AH

=

90∴Y大不同數制的數比大小,可看它等值的十進制數誰大1.2

計算機中數據的編碼16數據的編碼是為了解決不同信息在計算機中的具體表示計算機中數據的編碼包括:字符數據的編碼數值數據的編碼一、字符的編碼—ASCII碼17字符數據可顯示字符英文大小寫字母、數字符號(1~9)、其他(如%、+等)非顯示字符(控制字符)如:回車符、換行符、退格符、刪除符等ASCII碼在計算機中,字符數據都是用二進制編碼的形式表示,即每個字符被賦予一個固定的二進制編碼ASCII碼(美國信息交換標準編碼)是最常用的字符編碼ASCII碼使用七位二進制編碼來表示一個符號,故該編碼方案中共有128個符號(27=128)標準ASCII碼字符表:18L

H0000010100111001011101100000NULDLESP0@P`p0001SOHDC1!1AQaq0010STXDC2“2BRbr0011ETXDC3#3CScs0100EOTDC4$4DTdt0101ENGNAK%5EUeu0110ACKSYN&6FVfv0111BELETB‘7GWgw1000BSCAN(8HXhx1001HTEM)9IYiy1010LFSUB*:JZjz1011VTESC+;K[k{1100FFFS,<L\l|1101CRGS-=M]m}1110SORS.>N↑n~1111SIUS/?O←oDEL例如:鍵入字符‘1’,實際寫入鍵盤存儲區的是31H,即0011,0001B鍵入字符‘A’,實際寫入鍵盤存儲區的是41H即0100,0001B又如:欲顯示‘0’,應把30H即0011,0000B

→顯示存儲區欲顯示‘F’,應把46H

即0100,0110B

→顯示存儲區19要求牢記以下18個字符的ASCⅡ碼:200~9的ASCⅡ碼為:A~F的ASCⅡ碼為:回車符的ASCⅡ碼為:換行符的ASCⅡ碼為:30H~

39H41H~

46H0DH0AH二、碼制21解決在微型計算機中如何表示有符號數計算機只能識別0和1組成的數或代碼,所以有符號數也只能用0和1來表示(一)真值和機器數的概念22真值通常,把用“+”、“-”表示的數稱為真值數機器數把用符號位的0、1表示正、負的數稱為機器數0

X

X

X

X

X

X

X1

X

X

X

X

X

X

X正數 負數字長包括符號位在內,一個二進制數占有的位數例如:字長n=8的二進制數,除了符號位,數值部分為7位由于數值部分的表示方法不同,有符號數可有三種表示方法,即機器數有三種形式:原碼、反碼和補碼1.

原碼23原碼表示的有符號數,最高位為符號位,數值位部分就是該數的絕對值例:設某機器為8位機,即一個數據用8位(二進制)來表示則:+23

(17H)的原碼機器數為00010111B-23(-17H)的原碼機器數為10010111B其中最高位是符號位,后7位是數值位2.

反碼24反碼表示的有符號數,也是把最高位規定為符號位,但數值部分對于正數是其絕對值,而對于負數則是其絕對值按位取反(即1變0,0變1)例:+23的反碼機器數為23的原碼機器數為23的反碼機器數為00010111B10010111B11101000B數字0的反碼有2種表示:+0

=

00000000B-

0

=

11111111B3.

補碼25補碼表示的有符號數,對于正數來說同原碼、反碼一樣,但負數的數值位部分為其絕對值按位取反后末位加1所得例:+23的補碼為-23的反碼為-23的補碼為00010111B11101000B11101001B小結26①

機器數比真值數多一個符號位②

正數的原碼、反碼、補碼與真值數相同③

負數原碼的數值部分與真值相同負數反碼的數值部分為真值數按位取反負數補碼的數值部分為真值數按位取反末位加1④

沒有負零的補碼,或者說負零的補碼與正零的補碼相同⑤

由于補碼表示的機器數更適合運算,為此,計算機系統中負數一律用補碼表示⑥

補碼機器數的數值范圍⑦

設機器數字長為n位,用來表示整數,則n位補碼數其真值范圍為⑧

-2n-1

~+2n-1

1⑨

例1:⑩

設字長為8,則8位補碼數為:1000,0000B

~0111,1111B?

其對應的十進制真值數為:-128

~

+127?

例2:?

設字長為16,則16位補碼數為?

1000,0000,0000,0000B

~

0111,1111,1111,1111B?

則對應的十進制真值數為:-32768

~27例:真值與機器數的轉換(設字長n=8)28(1)設[x]補=(96)16,則x=(

?)10?

)16解:[x]補=(96)16=10010110B則x=-1101010B=(-106)10(2)設x=(-120)10,則[x]補=(解:x=(-120)10

=(-1111000)2則[x]補=(1000,1000)2

=(88)16)16(3)設x

=

(

100

)10,則[x]補

=

(

?解:x=(100)10

=(+110,1100)2則[x]補=(0110,1100)2

=(6C)16若已知一個負數的補碼,再取一次補等于其原碼,即{[x]補}補=[x]原(4)設[x]補

=

(

96

)16,則x

=

(

?)10解:[x]補=(96)16

=1001,0110B1110,1001B+

1[x]原=1110,1010B則x=-110,1010B=(-106)10數值位逐位取反末位加129(二)整數補碼的運算30關于“模”的概念一個計量器的最大容量稱為該計量器的“模”例1:四位計數器能存0000~1111共十六個數∴模=24例2:八位計數器能存0000,0000~1111,1111共256個數∴模=

28例3:十六位計數器能存0000,0000,0000,0000~1111,1111,1111,1111共65536個數∴模=

2162.

四位的加法器(由四個全加器組成)若計算8+8,則=0,進位為1進位為“1”,其值為16,就是四位加法器的“?!?,它被運算器“丟失”了100011

1

1∑

∑0

0

1

1∑

∑1

1

1

0模=24=16在加法器上進行運算:7

+

6

=

13,進位為0313.整數補碼的加減運算32[x+y]補=[x]補+[y]補[x–y]補=[x]補+[-y]補符號位參加運算以2n為模(n為字長)當真值滿足下列條件時,結果正確,否則結果錯誤-

2n-1≤

x,

y,

x+y,

x-y

<

+

2n-1例1:設x=(66)10,y=(51)10,以28為模,補碼運算x+y

和x-y0,

0111,

0101B1,

0000,

1111B被運算器丟失,保存在進位標志寄存器中[x+y]補=0111,0101B∴x+y=+117,√進位=033[x-y]補=0000,1111B∴x-y=+15,√進位=1解:

x

+

y:[x]補=0100,0010B+

[y]補=0011,0011Bx

-

y:[x]補=0100,0010B+

[-y]補=1100,1101B例2:以28為模,補碼運算,求66+99和-66-990,

1010,

0101B1,

0101,

1011B被運算器丟失,保存在進位標志寄存器中[66+99]補=1010,0101B∴66+99=-91,×進位=034[-66-99]補=0101,1011B∴-66-99=+9×1,進位=1解:

66

+

99:[66]補=0100,0010B+

[99]補=0110,0011B-66

-

99:[-66]補=1011,1110B+

[-99]補=1001,1101B錯誤原因:∵字長n=8的補碼數,其取值范圍是:-128~+127而:66+99=165,真值超過127,-66-99=-165,真值小于-128總之,∵運算器位數不夠,不能表示165和-165∴運算結果錯誤35(三)無符號數的概念計算機處理的數值數據,包括:有符號數和無符號數兩類有符號數用補碼表示,其最高位代表符號什么是無符號數?數的最高位不代表符號,而是數值的一部分即沒有符號位某數是無符號數還是有符號數,其物理意義是由程序員定義!有符號數無符號數例1:某課程成績沒有負數,所以成績應視為無符號數例2:某科室工資總額是無符號數例3:數N=1111,1111B

,物理意義:-1和25536(四)溢出和進位37概念:進位:運算后,最高位向更高位的進位值溢出:運算結果超出了運算器所能表示的范圍下列情況就發生了溢出:①

8位加法器,運算無符號數,結果≥256②

8位加法器,運算有符號數,結果>+127或者<-128③

16位加法器,運算無符號數,結果≥65536④

16位加法器,運算有符號數,結果>215-1或者<-215值保存溢出標志置為CF∑進位標志2.

計算機怎樣表示進位和溢出①

運算器對有符號溢數出和標無志符號數同樣對待②

最高位的進位

OF

在“和進的最位高標位志寄存器”中③

若加數與被加數的最高位相同,卻與結果的最高位相異,則將

溢出判斷電路1加數 來自低位的進位值被加數383.

程序員如何判斷溢出錯?39①

如果參與運算的數是無符號數,則判進位標志,即:進位標志CF=1,表示溢出錯①

如果參與運算的數是有符號數,則判溢出標志,即:溢出標志OF=1,表示溢出錯無符號數有符號數例1:無符號數40有符號數加數

0100,

0010B66+66被加數

0110,

0011B99+99和

0,

1010,

0101B√165165×-91+165CF

=

0,

OF

=

1例2:CF

=

1,

OF

=

1加數

1011,1110B190-66被加數

1001,1101B157-99和

1,

0101,

1011B×91347+×91-1651.3

計算機系統的基本組成一、計算機系統組成硬件中央處理器存儲器系統I/O接口電源系統I/O設備軟件系統軟件應用軟件主機箱41計算機的發展第1代(1946~1957)采用電子管作為邏輯部件第2代(

1957~1965

)采用晶體管作為邏輯部件第3代(

1965~1971

)采用中、小規模集成電路為主要部件第4代(

1971~現在)采用大規模、超大規模集成電路為主要部件42馮·

諾依曼體系結構現代計算機的硬件結構是在馮·

諾依曼體系結構思想上建立核心思想:存儲程序存儲器運算器控制器輸入輸出43計算機按體積、性能和價格等分類,可分為:巨型機、大型機、中型機、小型機、微型機什么是微型計算機?以大規模、超大規模集成電路為主要部件,以集成了計算機主要部件-控制器和運算器的微處理器為核心所構成的計算機系統存儲器運算器控制器輸入輸出44微型計算機的發展第1代(1971~1972)4位和低檔8位微機:4004、8008第2代(1973~1977)中、高檔8位微機:8080/8085第3代(1978~1984)16位微機:8086/8088第4代(1985~1999)32位微機:80386,

80486,

Pentium,

Pentium

Pro,

MMX

Pentium,Pentium

II,

Pentium

III,

Pentium

4第5代(2000~至今)Itanium45微型計算機的特點:體積小、重量輕、價格低廉簡單靈活、可靠性高功耗低、對使用環境要求不高結構靈活、應用面廣微型計算機的發展方向

溫馨提示

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

最新文檔

評論

0/150

提交評論