版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、微型計(jì)算機(jī)原理及應(yīng)用技術(shù)微型計(jì)算機(jī)原理及應(yīng)用技術(shù)機(jī)械工業(yè)出版社計(jì)算機(jī)基礎(chǔ)知識第1章1.1計(jì)算機(jī)發(fā)展概述 1.1.1 計(jì)算機(jī)發(fā)展概況 1.1.2 計(jì)算機(jī)的主要特點(diǎn) 1.1.3 計(jì)算機(jī)的分類 1.1.4 計(jì)算機(jī)的應(yīng)用 1.1.5 計(jì)算機(jī)的發(fā)展趨勢1.2 運(yùn)算基礎(chǔ) 1.2.1 進(jìn)位計(jì)數(shù)制 1.2.2 二進(jìn)制編碼 1.2.3 帶符號數(shù)的表示 1.2.4 數(shù)的定點(diǎn)和浮點(diǎn)表示1.3 計(jì)算機(jī)系統(tǒng)的組成及程序執(zhí)行過程 1.3.1 計(jì)算機(jī)硬件系統(tǒng)組成及程序執(zhí)行過程 1.3.2 計(jì)算機(jī)的軟件系統(tǒng) 1.3.3 微型計(jì)算機(jī)系統(tǒng)的組成及特點(diǎn) 1.3.4 微型計(jì)算機(jī)的主要技術(shù)指標(biāo)計(jì)算機(jī)發(fā)展概述采用水銀延遲線作為內(nèi)存,磁鼓
2、作為外存。體積大、耗電多、運(yùn)算速度慢。最初只能使用二進(jìn)制表示的機(jī)器語言,到20世紀(jì)50年代中期才出現(xiàn)匯編語言。這個(gè)時(shí)期,計(jì)算機(jī)主要用于科學(xué)計(jì)算和軍事方面,應(yīng)用很不普遍。電子管計(jì)算機(jī)(19451958年)內(nèi)存主要采用磁芯,外存大量采用磁盤,輸入輸出設(shè)備有了較大改進(jìn)。體積顯著減小、可靠性提高、運(yùn)算速度可達(dá)每秒百萬次。軟件方面出現(xiàn)了高級程序設(shè)計(jì)語言和編譯系統(tǒng)。計(jì)算機(jī)開始廣泛應(yīng)用于以管理為目的的信息處理。第二代第一代晶體管計(jì)算機(jī)(19581964年)1.11.1.1計(jì)算機(jī)發(fā)展概況第三代第四代集成電路計(jì)算機(jī) (1964-1971年)主要采用中、小規(guī)模集成電路,運(yùn)算速度達(dá)每秒千萬次,可靠性大大提高,體積進(jìn)
3、一步縮小,價(jià)格大大降低。軟件方面進(jìn)步很大,有了操作系統(tǒng),開展了計(jì)算機(jī)語言的標(biāo)準(zhǔn)化工作并提出了結(jié)構(gòu)化程序設(shè)計(jì)方法,出現(xiàn)了計(jì)算機(jī)網(wǎng)絡(luò)。計(jì)算機(jī)應(yīng)用開始向社會(huì)化發(fā)展,其應(yīng)用領(lǐng)域和普及程度迅速擴(kuò)大。微型計(jì)算機(jī)的出現(xiàn)和發(fā)展是計(jì)算機(jī)發(fā)展史上的重大事件,使得計(jì)算機(jī)在存儲(chǔ)容量、運(yùn)算速度、可靠性和性能價(jià)格比等方面都比上一代計(jì)算機(jī)有了較大突破。各種系統(tǒng)軟件、應(yīng)用軟件大量推出,功能配置空前完善,充分發(fā)揮了計(jì)算機(jī)的功能,把計(jì)算機(jī)的發(fā)展和應(yīng)用帶入了一個(gè)全新時(shí)代。大規(guī)模集成電路計(jì)算機(jī)(1971年至今)1.1.1計(jì)算機(jī)的發(fā)展史計(jì)算機(jī)的主要特點(diǎn)自動(dòng)性高速性邏輯性通用性準(zhǔn)確性特點(diǎn)1.1.2計(jì)算機(jī)的分類從原理上數(shù)字計(jì)算機(jī)模擬計(jì)算機(jī)
4、從結(jié)構(gòu)上從用途上專用計(jì)算機(jī)通用計(jì)算機(jī)從字長上4位、8位、16位機(jī)32位、64位機(jī)位片機(jī)單片機(jī)、單板機(jī)微機(jī)系統(tǒng)等1.1.3航空航天科學(xué)研究家用電器計(jì)算機(jī)的應(yīng)用1.1.4計(jì)算機(jī)技術(shù)的發(fā)展趨勢多媒體技術(shù)兩極化網(wǎng)絡(luò)化智能化非馮諾依曼體系結(jié)構(gòu)計(jì)算機(jī) 1.1.5運(yùn)算基礎(chǔ)1.2一個(gè)R進(jìn)制數(shù)具有以下主要特點(diǎn)具有R個(gè)不同數(shù)字符號:0、1、R-1逢R進(jìn)一S= an-1an-2a1a0.a-1a-2a-m =an-1Rn-1 + an-2Rn-2 +a1R1 +a0R0+a-1R-1 +a-mR-m 上述R進(jìn)制數(shù)S可用多項(xiàng)式(稱為按權(quán)展開式)表示為:1.2.1 進(jìn)位計(jì)數(shù)制 用 an-1an-2a1a0.a-1a-2
5、a-m書寫表方式示數(shù)據(jù)的方法稱為位置表示法。十進(jìn)制數(shù)具有十個(gè)不同的數(shù)字符號,即0-9逢十進(jìn)一特點(diǎn)一個(gè)十進(jìn)數(shù)可以用它的按權(quán)展開式表示。例如:(758.75)10=7102+5101+8100+710-1+ 510-21.二進(jìn)制數(shù)一個(gè)二進(jìn)制數(shù)可以用它的按權(quán)展開式表示。例如:(10110.101)2=124+023+122+121+020 +12-1+02-2 +12-3 =(22.625)10具有兩個(gè)不同的數(shù)字符號,即0和1逢二進(jìn)一特點(diǎn)2.(1AF.4)16 =1162 +10161 +15160 +416-1 =(430.25)10一個(gè)十六進(jìn)制數(shù)可以用它的按權(quán)展開式表示。例如:具有十六個(gè)不同的數(shù)
6、字符號,即0-9和A-F逢十六進(jìn)一特點(diǎn)3.十六進(jìn)制數(shù)十進(jìn)制二進(jìn)制16進(jìn)制十進(jìn)制二進(jìn)制16進(jìn)制000000910019100011101010A200102111011B300113121100C401004131101D501015141110E601106151111F701117161000010810008171000111表1-1三種數(shù)制對照表【例1-1】 十進(jìn)制數(shù)22.625轉(zhuǎn)換為二進(jìn)制數(shù)222112余0(低位)52余122余112余00余1(高位)0.625 21 .25 取整數(shù)1(高位) 20 .5 取整數(shù)0 21 .0 取整數(shù)0(低位) (0.625)10=(0.101)2所以
7、:(22)10=(10110)2結(jié)果:(22.625)10=(10110.101)2整數(shù)部分:小數(shù)部分:4.各種數(shù)制之間的轉(zhuǎn)換十進(jìn)制數(shù)430.25轉(zhuǎn)換為十六進(jìn)制數(shù)430162616余14E(低位)116余10A余1(高位)整數(shù)部分:0小數(shù)部分:0. 2 5 1 64 . 0 取整數(shù)4結(jié)果:(430.25)10=(1AE.4)16【例1-2】注意整數(shù)部分轉(zhuǎn)換,每次只求整數(shù)商,將余數(shù)作為轉(zhuǎn)換結(jié)果的一位,重復(fù)對整數(shù)商除基數(shù),一直除到商為0為止。小數(shù)部分轉(zhuǎn)換,每次把乘積的整數(shù)取走作為轉(zhuǎn)換結(jié)果的一位,對剩下的小數(shù)繼續(xù)進(jìn)行乘法運(yùn)算。對某些數(shù)可以乘到積的小數(shù)為0(如上述兩例),這種轉(zhuǎn)換結(jié)果是精確的;對某些數(shù)
8、(如0.3)永遠(yuǎn)不能乘到積的小數(shù)為0,這時(shí)要根據(jù)精度要求,取適當(dāng)?shù)慕Y(jié)果位數(shù)即可,這種轉(zhuǎn)換結(jié)果是不精確的。:十六進(jìn)制數(shù) 1 A E 4 0001 1010 1110 0100即(1AE.4)16=(110101110.01)2若要將二進(jìn)制數(shù)轉(zhuǎn)換為十六進(jìn)制數(shù),只要以小數(shù)點(diǎn)為分界,分別向左和向右每四位二進(jìn)制位分為一組(若最高位或最低為不夠四位則補(bǔ)0),對應(yīng)轉(zhuǎn)換為十六進(jìn)制數(shù)即可。例如:二進(jìn)制數(shù) 110101110.010001 1010 1110 . 0100十六進(jìn)制數(shù) 1 A E . 4即(110101110.01)2=(1AE.4)16例如二進(jìn)制數(shù)的算術(shù)運(yùn)算【例1-3】 10100 =100001
9、 【例1-4】 100001-10100=1101 1 0 1 0 0 1 0 0 0 0 1 + 1 1 0 1 - 1 1 0 1 0 1 0 0 0 0 1 1 1 0 1 【例1-5】 11011011=10001111 【例1-6】 11100101=10111 1 1 0 1 1 0 1 商 1 0 1 1 1 1 1 0 0 1 1 0 1 1 0 1 1 1 0 1 1 0 0 0 0 0 0 0 1 0 1 + 1 1 0 1 1 1 余數(shù) 1 0 0 0 1 1 1 15.二進(jìn)制數(shù)的邏輯運(yùn)算【例1-7】10100101 AND 10001011 【例1-8】10100101
10、 OR 10001011 =10000001 =10101111 1 0 1 0 0 1 0 1 1 0 1 0 0 1 0 1 AND 1 0 0 0 1 0 1 1 OR 1 0 0 0 1 0 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 1 1 16.abNOT aNOT ba AND ba OR ba XOR b001 1000011001110010111100110【例1-9】 NOT 10100101 【例1-10】10100101 XOR 10001011 =01011010 =00101110 1 0 1 0 0 1 0 1 NOT 1 0 1 0 0 1 0
11、 1 XOR 1 0 0 0 1 0 1 1 0 1 0 1 1 0 1 0 0 0 1 0 1 1 1 0二進(jìn)制編碼1.2.2BCD碼是十進(jìn)制數(shù),有10個(gè)不同的數(shù)字符號,且是逢十進(jìn)位的;但它的每一位是用4位二進(jìn)制編碼來表示的,因此稱為二進(jìn)制編碼的十進(jìn)制數(shù)。BCD碼比較直觀,例如十進(jìn)制數(shù)65用BCD碼書寫為01100101,BCD碼01001001.0111表示的十進(jìn)制數(shù)為49.7。1.二進(jìn)制編碼的十進(jìn)制數(shù)雖然BCD碼是用二進(jìn)制編碼方式表示的,但它與二進(jìn)制之間不能直接轉(zhuǎn)換,要用十進(jìn)制作為中間橋梁,即先將BCD碼轉(zhuǎn)換為十進(jìn)制數(shù),然后再轉(zhuǎn)換為二進(jìn)制數(shù);反之亦然。表1-2 BCD編碼表十進(jìn)制8421
12、BCD碼十進(jìn)制8421BCD碼000006011010001701112001081000300119100140100100001 000050101110001 0001字母與字符的編碼 2.另外,在計(jì)算機(jī)中,漢字編碼采用國標(biāo)碼(GB18030-2000),它采用單、雙、四字節(jié)混合編碼,每個(gè)字節(jié)的最高位為1,并以此來區(qū)分漢字和ASC碼。字母和字符也必須按照特定的規(guī)則,用二進(jìn)制編碼才能在機(jī)器中表示。編碼可以有各種方式,目前微機(jī)中最普遍采用的是ASC碼(American Standard Code for Information Interchange,美國標(biāo)準(zhǔn)信息交換碼)。ASC碼采用7位二
13、進(jìn)制編碼,故可表示27 =128個(gè)字符,其中包括數(shù)碼(0-9),以及英文字母等可打印的字符。ASCII(美國信息交換標(biāo)準(zhǔn)碼)字符表(7位碼) MSD LSD 0(H)000(B)1(H)001(B) 2(H)010(B) 3(H)011(B) 4(H)100(B) 5(H)101(B) 6(H)110(B) 7(H)111(B)0(H)1(H)2(H)3(H)4(H)5(H) 0000(B) 0001(B) 0010(B) 0011(B) 0100(B) 0101(B)NULSOHSTXETXEOTENGDLEDC1DC2DC3DC4NAKSP!“#$%012345ABCDEPQRSTUabc
14、depqrstU6(H)7(H)8(H)9(H)A(H) 0110(B) 0111(B) 1000(B) 1001(B) 1010(B)ACKBELBSHTLFSYNETBCANEMSUB&()*6789:FGHIJVWXYZfghijvwxyZB(H)C(H)D(H)E(H)F(H) 1011(B) 1100(B) 1101(B) 1110(B) 1111(B)VTFFCRSOSIESCFSGSRSVS+,-./;=?KLMNOklmNo|DEL補(bǔ)充:漢字編碼計(jì)算機(jī)能否處理漢字是能否在我國推廣計(jì)算機(jī)應(yīng)用的關(guān)鍵.1981年我國公布“通信用漢字字符集及交換碼標(biāo)準(zhǔn)GB2312-80”: 一級漢字:
15、 3775 規(guī)定7445個(gè)字符 二級漢字: 3008 西文字母,數(shù)字,圖形符號:682大漢字集ISO/IEC 10646 中,日,韓漢字,共20902個(gè).1.漢字輸入的4種方法(1)整字大鍵盤輸入:用于中文打字機(jī), 不用.(2)手寫輸入:書寫板(3)語音輸入:正在研究開發(fā).(4)小鍵盤輸入:用標(biāo)準(zhǔn)英文鍵盤輸入,共2000多種方法.常用的有:拼音輸入碼:如全拼,雙拼等.字形編碼:五筆字型等.音形編碼:以字音屬性為讓,字形屬性為輔.數(shù)字編碼:如區(qū)位碼,電報(bào)碼等. 6763補(bǔ)充:漢字編碼2.漢字內(nèi)碼:是用于漢字信息的存儲(chǔ),交換,檢索等操作的機(jī)內(nèi)代碼.以GB2312-80編碼(又叫國標(biāo)碼)為好,其特點(diǎn)
16、是:(1)占2個(gè)字節(jié),其最高位都是“1”.例:“啊”的國標(biāo)碼是3021H,其內(nèi)碼是3021H H=B0A1H3.漢字交換碼:用于實(shí)現(xiàn)不同漢字內(nèi)碼間系統(tǒng)間的漢字信息轉(zhuǎn)換.主要有:(1)國標(biāo)碼: GB2312-80編碼,又叫國標(biāo)碼,規(guī)定:1個(gè)漢字用2個(gè)字節(jié)組成,其高位是0.如:“啊”的國標(biāo)碼是3021H,即低字節(jié)00110000,高字節(jié)00100001.(2)區(qū)位碼:是數(shù)字編碼,無重碼.把GB2312-80全部字符集組成94*94方陣,每1行稱1個(gè)區(qū),編號從01-94,區(qū)號在前 每1列稱1個(gè)位,編號從01-94,位號在后每個(gè)漢字1個(gè)區(qū)號,1個(gè)位號,均用10進(jìn)制表示,“啊”的區(qū)位碼是1601補(bǔ)充:漢
17、字編碼(3) 區(qū)位碼與國標(biāo)碼的關(guān)系把區(qū)位碼的區(qū)號,位號變成十六進(jìn)制數(shù),再分別加上(20)16.例:“粗”的區(qū)位碼是2054,求其國標(biāo)碼.解: 區(qū)號(20)10= (14)16, (14)16+ (20)16= (34)16 位號(54)10= (36)16 (36)16+ (20)16= (56)164.漢字輸出碼:漢字輸出通常使用點(diǎn)陣表示的字模碼.一個(gè)漢字有多種字體、字形,用不同的字模碼表示.不同的字體有不同的字庫.內(nèi)碼 字庫地址 選字體 字模碼漢字字庫:點(diǎn)陣字庫,矢量字庫.輸入設(shè)備 代碼轉(zhuǎn)換軟件 加漢字標(biāo)識 字模庫 輸出設(shè)備 區(qū)位,國標(biāo)碼 雙1碼國標(biāo)碼為3456H漢字輸入碼漢字交換碼漢字內(nèi)
18、碼漢字字形庫漢字漢字2字節(jié)原碼正數(shù)的符號位用0表示,負(fù)數(shù)的符號位用1表示,數(shù)值位保持不變。這種方法稱為原碼。原碼的定義為: 若X+0 則X原=X 若X-0 則X原= 2n-1 X 其中n為原碼的位數(shù)。1.2.3 帶符號數(shù)的表示1.例 設(shè)機(jī)器字長為n=8時(shí),試求+0、+6、+127、-0、-6、-127 的原碼解: +0原=00000000 -0原=10000000 +6原=00000110 -6原=10000110 +127原=01111111 -127原=11111111正數(shù):原碼與相應(yīng)的二進(jìn)制數(shù)完全相同;負(fù)數(shù):二進(jìn)制數(shù)的最高位一定是“1”,其余各位是該數(shù)的絕對值。零:有正零和負(fù)零之分。原碼
19、表示法最大優(yōu)點(diǎn):簡單直觀,但不便于加減運(yùn)算。反碼“0”有兩種表示方法:+0反=00000000,-0反=111111118位二進(jìn)制反碼真值范圍為-127+127;16位反碼真值范圍為-32767 。當(dāng)一個(gè)帶符號數(shù)用反碼表示時(shí),最高位為符號位。特點(diǎn)2.反碼的定義為:若X+0 則X反=X 若X-0 則X反= 2n +X-1 其中n為反碼的位數(shù)。例 設(shè)機(jī)器字長為n=8時(shí),試求+0、+6、+127、-0、-6、-127 的反碼解: +0反=00000000 -0反=11111111 +6反=00000110 -6反=11111001 +127反=01111111 -127反=10000000正數(shù):反碼
20、與相應(yīng)的二進(jìn)制數(shù)完全相同;負(fù)數(shù):二進(jìn)制數(shù)的最高位一定是“1”,其余各位是該數(shù)的原碼按位取反。零:有正零和負(fù)零之分。運(yùn)算性質(zhì):X反+Y反= X+Y反; X反反=X原反碼作加減運(yùn)算比原碼簡單得多: 1) X+Y反=X反+Y反(符號位與尾數(shù)一樣參加運(yùn)算,循環(huán)進(jìn)位) 2) X-Y反=X+(-Y)反=X反+-Y反(反碼把減法化成加法) 3) -Y反=Y反反(將Y反連同符號一起對所有各位求反,得 -Y反)例:x=45,y=78,用八位字長反碼求x+y,x-y,-x+y,-x-y解:x=45=101101B, y=78=1001110Bx反=00101101 -x反=11010010 y反=01001110
21、 -y反=10110001x+y反=01111011 x-y反=11011110 -x+y反=00100001 -x-y反=10000100 00101101 00101101 11010010 11010010 + 01001110 01111011 11011110 100100000 110000011 +1 x+y=1111011B x-y=-0100001B -x+y=0100001B -x-y=-1111011B =123 =-33 =33 =-123補(bǔ)碼在鐘表上,指針正撥12小時(shí)或倒撥12小時(shí),其時(shí)間值是相等的,即在鐘表上X+12=X-12(mod 12)。模的概念補(bǔ)碼的引入對于
22、n位二進(jìn)制數(shù),其計(jì)數(shù)范圍為0( 2n-1),在該計(jì)數(shù)器上加2n或減2n結(jié)果是不變的,我們稱2n為n位計(jì)數(shù)系統(tǒng)的模。對鐘表來說,它的模為12。在鐘表上,如果現(xiàn)在時(shí)間是6點(diǎn)整,而鐘表卻指著8點(diǎn)整,快了2小時(shí),校準(zhǔn)的方法是正撥10小時(shí)或倒撥2小時(shí),結(jié)果都正確,即:8+10=6(mod 12)順撥 ,8-2=6(mod 12) 倒撥。3.模的概念 模:一個(gè)物理系統(tǒng)的最大量程 補(bǔ)數(shù):一個(gè)數(shù)與模的差就是該數(shù)的補(bǔ)數(shù) 加法代替減法:減一個(gè)數(shù)總可用加上該數(shù)的補(bǔ)數(shù)來代替補(bǔ)碼 一個(gè)絕對值小于模的數(shù),若為正,其補(bǔ)碼就是該數(shù)本身; 若為負(fù),其補(bǔ)碼就是該數(shù)與模的和。補(bǔ)碼補(bǔ)碼:X補(bǔ)= X原, X 0 X補(bǔ)= X反+1(末位
23、), X0, X補(bǔ)=m+x=x (mod m)當(dāng)X0, X補(bǔ)=m+x=m-|x| (mod m)例:X1=+110, X2=-110,n=4(含符號位)解: n=4,m=24=10000X1補(bǔ)=m+x=10000+110=0110X2補(bǔ)=m+x=10000-110=101062補(bǔ)碼純小數(shù)的補(bǔ)碼:在計(jì)算機(jī)中,純小數(shù)常用補(bǔ)碼表示.即: X原, 0X1 2+X, -1X0例:X= -0.1000B, 求X補(bǔ)解: X補(bǔ) = 2+X=2-0.1000=1.1000B補(bǔ)碼的簡單求法正數(shù):X補(bǔ) = X原負(fù)數(shù):X補(bǔ) =XS. Xn-1. Xn-2. . X0+ 0.00.1,即數(shù)值位逐位變反,未位加1.性質(zhì):
24、 X反反= X原 , X補(bǔ)補(bǔ)= X原X補(bǔ) = (mod2)原碼、補(bǔ)碼性質(zhì)的舉例 X X原 X反 X補(bǔ) X反反 X補(bǔ)補(bǔ) 從上例可見,不論對正數(shù)還是負(fù)數(shù),反碼和補(bǔ)碼有相似性質(zhì) X反反= X原 X補(bǔ)補(bǔ)= X原 X反反 X X原 X反 X補(bǔ) X補(bǔ)反 X補(bǔ)補(bǔ) 取反加1變反變反加1變反加1補(bǔ)碼補(bǔ)碼運(yùn)算要注意以下三個(gè)問題:(1)符號位與數(shù)值位一起參加運(yùn)算.(2)如有進(jìn)位出現(xiàn),舍去不要.(3)運(yùn)算性質(zhì):X補(bǔ)+Y補(bǔ)= X+Y補(bǔ)【例】已知X=-0.1101,Y=-0.0001,求X+Y解: :X補(bǔ)= 1.0011 + Y補(bǔ)= 1.1111 X+Y反=11.0010 X+Y= -0.1110真值 舍去不要結(jié)論:采用
25、反、補(bǔ)碼可基本解決負(fù)數(shù)在機(jī)器內(nèi)部數(shù)值位連 同符號位一起參加運(yùn)算的問題。求補(bǔ)碼的規(guī)則是符號位數(shù)值化數(shù)值位逐位變反,未位加1補(bǔ)碼運(yùn)算 : X+Y補(bǔ)=X補(bǔ)+Y補(bǔ)(符號位和尾數(shù)一樣參加運(yùn)算),進(jìn)位丟棄不管 X-Y補(bǔ)=X+(-Y)補(bǔ)=X補(bǔ)+-Y補(bǔ)(補(bǔ)碼把減法化成加法) -Y補(bǔ)=Y補(bǔ)補(bǔ)例:X=45,Y=78,用八位字長的補(bǔ)碼求X+Y,X-Y,-X+Y,-X-Y解:X=45=101101B, Y=78=1001110Bx補(bǔ)=00101101 -x補(bǔ)=11010011 y補(bǔ)=01001110 -y補(bǔ)=10110010 x+y補(bǔ)=01111011 x-y補(bǔ)=11011111 -x+y補(bǔ)=00100001 -x-
26、y補(bǔ)=10000101 00101101 00101101 11010011 11010011 01111011 11011111 100100001 110000101 x+y=1111011B x-y=-0100001B -x+y=0100001B -x-y=-1111011 =123 =-33 =33 =-123雙符號位補(bǔ)碼:正數(shù)的符號用00表示,負(fù)數(shù)的符號用11表示。 運(yùn)算過程中兩個(gè)符號位不一致即發(fā)生溢出:01表示上溢 10表示下溢+3補(bǔ)=+3原=+3反=00000011-3補(bǔ)=-3反+1=11111100+1=11111101+0補(bǔ)=+0原=+0反=00000000-0補(bǔ)=-0反+1
27、=11111111+1=00000000補(bǔ)碼的求法對n為二進(jìn)制數(shù),模為2n ,則X補(bǔ)=( 2in +X), MOD 2n ,i為正整數(shù)。補(bǔ)碼的定義若X+0 則X補(bǔ)=X , 若X -0 則X補(bǔ)= 2n +X,其中n為補(bǔ)碼的位數(shù)。如果X0,則X補(bǔ)=( 2in +X)MOD 2n=X,即正數(shù)的補(bǔ)碼為原正數(shù)不變。如果X0,則X補(bǔ)=(2n +X) MOD 2n = 2n -1+X+1=X反+1,即負(fù)數(shù)的補(bǔ)碼等于負(fù)數(shù)的反碼加1,也就是等于負(fù)數(shù)原碼除符號位外求反加1。求法與應(yīng)用+0補(bǔ)=-0補(bǔ)=00000000,即0的補(bǔ)碼為0,且只有一種表示方法。注意補(bǔ)碼+0補(bǔ)=-0補(bǔ)=00000000。8位二進(jìn)制補(bǔ)碼真值范
28、圍為-128+127,16位補(bǔ)碼真值范圍為-32768 。一個(gè)用補(bǔ)碼表示的二進(jìn)制數(shù),最高位為符號位,當(dāng)符號位為“0”即正數(shù)時(shí),其余位即為此數(shù)的二進(jìn)制值;但當(dāng)符號位為“1”即負(fù)數(shù)時(shí),其余位不是此數(shù)的二進(jìn)制值,其值為后面各位按位取反,在最低位加1。當(dāng)采用補(bǔ)碼表示時(shí),可以把減法運(yùn)算轉(zhuǎn)換為加法運(yùn)算,即XY補(bǔ)=X補(bǔ)+Y補(bǔ)。8位帶符號的補(bǔ)碼特點(diǎn)補(bǔ)碼完成四則運(yùn)算,只需具有雙向移位功能的加法器.數(shù)的表示方法十進(jìn)制數(shù)二進(jìn)制數(shù)原碼反碼補(bǔ)碼-128-127-126-2-1-0+0+1+2+126+127-10000000-1111111-1111110-0000010-0000001-0000000 -111111
29、11111111101000001010000001100000000000000000000001000000100111111001111111-100000001000000111111101111111101111111100000000000000010000001001111110011111111000000010000001100000101111111011111111000000000000000000000001000000100111111001111111表1-3所謂溢出是指運(yùn)算結(jié)果超出了規(guī)定長度數(shù)據(jù)的表數(shù)范圍,在此特指帶符號數(shù)的補(bǔ)碼運(yùn)算溢出。對字長為n位的補(bǔ)碼表示的
30、帶符號數(shù),其最高位表示符號,其余n-1位表示數(shù)值,其表數(shù)范圍為-2n-1+2n-1-1。如果一個(gè)運(yùn)算的結(jié)果超出了這個(gè)范圍,就稱為補(bǔ)碼溢出(簡稱溢出),這時(shí)運(yùn)算結(jié)果是錯(cuò)誤的。例如,對于8位字長的二進(jìn)制補(bǔ)碼數(shù),其表數(shù)范圍為-128+127。如果運(yùn)算結(jié)果超出了此范圍,就會(huì)產(chǎn)生溢出。4. 補(bǔ)碼運(yùn)算的溢出及其判斷方法已知60補(bǔ)=00111100,-60補(bǔ)=11000100 100補(bǔ)=01100100,-100補(bǔ)=10011100 60補(bǔ)= 00111100 -60補(bǔ)= 11000100 60補(bǔ)= 00111100+ 100補(bǔ)= 01100100 + -100補(bǔ)= 10011100 + -100補(bǔ)= 10
31、011100 10100000 101100000 11011000 自然丟失 符號 符號 符號即 60+100補(bǔ)=10100000,兩個(gè)正數(shù)相加,結(jié)果為負(fù)數(shù),是錯(cuò)誤的;(-60)+(-100)補(bǔ)=01100000,兩個(gè)負(fù)數(shù)相加,結(jié)果為正數(shù),是錯(cuò)誤的;60+(-100)補(bǔ)=11011000=-40。 前兩個(gè)運(yùn)算結(jié)果之所以不正確,是因?yàn)槠湎嗉咏Y(jié)果分別為+160和-160,均超出了表數(shù)范圍,使結(jié)果的數(shù)值部分占據(jù)了符號位,產(chǎn)生了溢出錯(cuò)誤。但一個(gè)正數(shù)與一個(gè)負(fù)數(shù)相加,一定不會(huì)產(chǎn)生溢出錯(cuò)誤。判斷溢出的方法很多,上例根據(jù)參加加法運(yùn)算的兩個(gè)數(shù)據(jù)的符號及運(yùn)算結(jié)果的符號可以判斷是否溢出。 計(jì)算機(jī)中,根據(jù)加法運(yùn)算中
32、在最高位與次高位的兩個(gè)進(jìn)位來判斷。設(shè)8位二進(jìn)制數(shù)的各位記為D7D6D5D0,運(yùn)算中兩個(gè)D6位的進(jìn)位記為C6,兩個(gè)D7位的進(jìn)位記為C7,用OV= C7 XOR C6(XOR是邏輯異或運(yùn)算)判別式可以判斷溢出情況。如果OV=0,表示結(jié)果無溢出,否則當(dāng)OV=1時(shí),表示結(jié)果有溢出。 請注意進(jìn)位與溢出的區(qū)別。進(jìn)位是指運(yùn)算結(jié)果的最高位向更高位的進(jìn)位,如上所述的8位運(yùn)算中的C7。進(jìn)位通常記做Cy,Cy=0表示無進(jìn)位,Cy=1表示有進(jìn)位。而溢出是用最高位進(jìn)位(即Cy)與次高位進(jìn)位的邏輯異或結(jié)果來判斷的。通過上例可以看出,有進(jìn)位不一定就有溢出,無進(jìn)位也不一定就無溢出。同理,有溢出不一定就有進(jìn)位,無溢出也不一定就
33、無進(jìn)位(請計(jì)算(-60)+100來驗(yàn)證)??梢?,進(jìn)位和溢出是兩個(gè)不同性質(zhì)的概念,不能混淆。 例: 溢出判別 X=-34-98=-132 (字長為8位) X補(bǔ)=-34補(bǔ)+-98補(bǔ) -34補(bǔ)=11011110B -98補(bǔ)=10011100B 11011110 10011100 1 01111010 丟失微型機(jī)中常用的溢出判別法:雙高位判別法Cs:如最高位(符號位)有進(jìn)位,CS=1,否則,CS=0。CP:如次高位有進(jìn)位,CP=1,否則,CP=0。判別法則:無溢出:若最高位進(jìn)位Cs 和次高位進(jìn)位Cp相同同為0或同為1有溢出: Cs 和Cp相異。當(dāng)CSCp=1時(shí),表示有溢出產(chǎn)生,否則無溢出產(chǎn)生正溢出:
34、CS=0,CP=1負(fù)溢出: CS=1, CP=0定點(diǎn)表示法約定小數(shù)點(diǎn)在符號位之后、數(shù)值部分最高位之前,因此數(shù)據(jù)是純小數(shù),故又稱定點(diǎn)小數(shù),其格式為:符號位數(shù)值部分(尾數(shù))小數(shù)點(diǎn)位置定點(diǎn)小數(shù)法比例因子的選擇:例如有兩個(gè)數(shù)為010.01和001.100,若進(jìn)行兩數(shù)相加時(shí):010.01+001.100=(0.1001+0.0110) 22 ,該比例因子選為22 ,而且兩數(shù)相加結(jié)果仍小于1。1.2.4 數(shù)的定點(diǎn)和浮點(diǎn)表示一 定點(diǎn)小數(shù)法約定小數(shù)點(diǎn)的位置固定在數(shù)值部分的最低位之后,也就是把數(shù)表示為純整數(shù),其格式如下:符號位數(shù)值部分(尾數(shù))小數(shù)點(diǎn)位置定點(diǎn)整數(shù)表示法也有比例因子的選擇問題,例如上例兩個(gè)數(shù)化為定點(diǎn)
35、整數(shù)運(yùn)算則為(010.01+001.100)=(01001 ) 2-2 ,該比例因子選為2-2。二 定點(diǎn)整數(shù)法定點(diǎn)表示法PfP1P2PmSfS1S2Sn 階符 階碼 數(shù)符 尾數(shù)浮點(diǎn)數(shù)包括兩部分:即階碼P和尾數(shù)S,它們都有各自的符號位。階碼的符號位又稱階符,用Pf表示,階碼有P1、P2Pm位;尾數(shù)的符號位又稱數(shù)符,用Sf表示,尾數(shù)有S1、S2Sn位。在浮點(diǎn)表示法中,小數(shù)點(diǎn)的位置是不固定的或者說是可浮動(dòng)的。一般來說,任何一個(gè)二進(jìn)制數(shù)的浮點(diǎn)表示格式為:浮點(diǎn)表示法由此得出:任何一個(gè)二進(jìn)制數(shù),它的浮點(diǎn)數(shù)可表示為:N= 2P S。 例如:二進(jìn)制數(shù)N= 2+11 0.1011,在浮點(diǎn)機(jī)中的表示格式為:000
36、1101011階符 階碼 數(shù)符 尾數(shù)規(guī)定:當(dāng)尾數(shù)滿足0.5S1時(shí),即為規(guī)格化數(shù)。從而看出,所謂規(guī)格化數(shù),即尾數(shù)的最高有效位是有效數(shù)字1,而不是0。對定點(diǎn)小數(shù)來說,用選擇恰當(dāng)?shù)谋壤蜃訉?shí)現(xiàn)規(guī)格化;對浮點(diǎn)表示法,需要調(diào)整階碼的數(shù)值實(shí)現(xiàn)規(guī)格化。 例如:N= 2+11 0.0101,這是非規(guī)格化浮點(diǎn)數(shù)。改寫成:N= 2+10 0.1010,這是規(guī)格化浮點(diǎn)數(shù)。浮點(diǎn)表示法定點(diǎn)表示法與浮點(diǎn)表示法的比較由于浮點(diǎn)數(shù)的小數(shù)點(diǎn)的位置是隱含于階碼之中,階碼不同的兩個(gè)尾數(shù)不能直接加減,需先把兩個(gè)數(shù)的階碼調(diào)整到一致,這稱為“對階”,然后兩個(gè)尾數(shù)才能相加減。數(shù)值表示范圍假定某機(jī)器字長32位,數(shù)符占1位,尾數(shù)占31位,則:定
37、點(diǎn)小數(shù)表示范圍: 2-31 S1- 2-31定點(diǎn)整數(shù)表示范圍: 1S 231 -1浮點(diǎn)數(shù)的運(yùn)算比定點(diǎn)數(shù)的運(yùn)算復(fù)雜采用二進(jìn)制數(shù)的形式表示指令和數(shù)據(jù) 將指令序列(程序)和數(shù)據(jù)預(yù)先存入計(jì)算機(jī)的存儲(chǔ)器中 計(jì)算機(jī)硬件由運(yùn)算器、控制器、存儲(chǔ)器、輸入設(shè)備、輸出設(shè)備五大部分組成 馮諾依曼型計(jì)算機(jī)工作原理的核心是“存儲(chǔ)程序”和“程序控制”,即“集中順序控制”。 當(dāng)人們要解決問題時(shí),首先將問題程序化,形成指令序列,然后將它存入存儲(chǔ)器中,再由CPU的控制器從存儲(chǔ)器中逐條取出指令解釋,并取出該指令要處理的操作數(shù)送往運(yùn)算器中執(zhí)行,最后輸出程序結(jié)果.即“程序存儲(chǔ)和程序控制”工作原理.這就是馮.諾依曼原理.1.3 計(jì)算機(jī)系
38、統(tǒng)的組成及程序執(zhí)行過程Von Neumann計(jì)算機(jī)體系結(jié)構(gòu)要點(diǎn)計(jì)算機(jī)硬件的基本結(jié)構(gòu)輸入設(shè)備運(yùn)算器輸出設(shè)備存儲(chǔ)器控制器數(shù)據(jù)流控制流圖1-1 計(jì)算機(jī)的基本硬件組成1.3.1 計(jì)算機(jī)的硬件系統(tǒng)組成及程序執(zhí)行過程1.運(yùn)算器、存儲(chǔ)器和控制器在微型機(jī)中存儲(chǔ)單元通常以8bit即1字節(jié)為單位。為了能唯一確定并找到任一個(gè)存儲(chǔ)單元,計(jì)算機(jī)對每一存儲(chǔ)單元都指定一個(gè)唯一的編號,稱之為存儲(chǔ)單元的地址,地址通常從0開始順序編排。即圖1-2所示。2031-18.186012.n地址 內(nèi) 容圖1-2 存儲(chǔ)單元的地址與內(nèi)容運(yùn)算器主要包括能完成加、減、乘、除算術(shù)運(yùn)算及邏輯運(yùn)算的電路以及多個(gè)寄存器。在控制信號的指揮下,運(yùn)算器完成諸
39、如算術(shù)運(yùn)算、邏輯運(yùn)算、暫存操作數(shù)或運(yùn)算結(jié)果以及數(shù)據(jù)傳送等工作。2.1.3.1 計(jì)算機(jī)的硬件系統(tǒng)組成及程序執(zhí)行過程 2. 指令指針寄存器(IP)指令寄存器(IR)指令譯碼器(ID)控制信號發(fā)生器控制器運(yùn)算器、存儲(chǔ)器和控制器1.3.1 計(jì)算機(jī)的硬件系統(tǒng)組成及程序執(zhí)行過程ACC通用寄存器組專用寄存器組IP讀/寫控制電路地址譯碼器存儲(chǔ)單元暫存器1暫存器2指令寄存器IR指令譯碼器ID控制信號發(fā)生器算術(shù)邏輯單元ALU地址總線AB 內(nèi)部控制信號外部控制信號數(shù)據(jù)總線DB控制總線CB圖1-3 簡單計(jì)算機(jī)的硬件2.運(yùn)算器、存儲(chǔ)器和控制器電路結(jié)構(gòu)示意圖1.3.1 計(jì)算機(jī)的硬件系統(tǒng)組成及程序執(zhí)行過程3. 程序執(zhí)行過程
40、 程序的執(zhí)行過程就是執(zhí)行指令序列的過程,也就是一條條地執(zhí)行指令的過程。 每一條指令的執(zhí)行,都要先從存儲(chǔ)器中取出指令(稱為取指階段),然后由控制器進(jìn)行分析譯碼、發(fā)出一系列控制信號完成該指令的執(zhí)行(稱為分析執(zhí)行階段)。 1.3.1 計(jì)算機(jī)的硬件系統(tǒng)組成及程序執(zhí)行過程4. 控制器設(shè)計(jì)微程序控制器按照其產(chǎn)生微操作控制信號的方式傳統(tǒng)的組合邏輯控制器控制器把指令的執(zhí)行分解成若干個(gè)微操作,用微指令將這些微操作編成微程序,通過執(zhí)行微程序來完成這些微操作,即執(zhí)行了指令。這就是微程序技術(shù)的基本原理。1.3.1 計(jì)算機(jī)的硬件系統(tǒng)組成及程序執(zhí)行過程系統(tǒng)軟件1.3.2 計(jì)算機(jī)的軟件系統(tǒng)各種語言的匯編或解釋、編譯程序機(jī)器的監(jiān)控管理程序、操作系統(tǒng)、調(diào)試程序、故障診斷程序程序庫系統(tǒng)軟件1.應(yīng)用軟件 計(jì)算機(jī)系統(tǒng)硬件、軟件與用戶
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 金融行業(yè)網(wǎng)絡(luò)招聘信息管理制度
- 國際貿(mào)易合同終止協(xié)議書
- 2024版房產(chǎn)抵押借款合同(含資產(chǎn)重組)模板3篇
- 2025社區(qū)衛(wèi)生服務(wù)協(xié)議服務(wù)合同
- 2025加工承攬委托合同的簡單版模板
- 公共事業(yè)采購管理制度
- 2025外銷合同樣本采用信用證支付
- 化妝品行業(yè)原料安全管理制度
- 職業(yè)健康危害因素辨識、評價(jià)制度
- 網(wǎng)絡(luò)安全和信息防護(hù)制度
- 電大成本會(huì)計(jì)機(jī)考判斷題專項(xiàng)試題及答案
- 零星維修工程施工方案
- 2025新高考志愿填報(bào)規(guī)則
- 記錄我的一天(教案)-2024-2025學(xué)年一年級上冊數(shù)學(xué)北師大版
- 部編 2024版歷史七年級上冊期末復(fù)習(xí)(全冊)教案
- 工程管理畢業(yè)論文范文(三篇)
- 新能源發(fā)電技術(shù) 電子課件 2.5 可控核聚變及其未來利用方式
- 五年級上冊英語單詞表外研
- 科室護(hù)理品牌
- Module 9 Unit2教學(xué)設(shè)計(jì)2024-2025學(xué)年外研版英語九年級上冊
- 有趣的機(jī)械結(jié)構(gòu)智慧樹知到答案2024年青島濱海學(xué)院
評論
0/150
提交評論