計(jì)算機(jī)基礎(chǔ)課件第四章數(shù)據(jù)的運(yùn)算_第1頁
計(jì)算機(jī)基礎(chǔ)課件第四章數(shù)據(jù)的運(yùn)算_第2頁
計(jì)算機(jī)基礎(chǔ)課件第四章數(shù)據(jù)的運(yùn)算_第3頁
計(jì)算機(jī)基礎(chǔ)課件第四章數(shù)據(jù)的運(yùn)算_第4頁
計(jì)算機(jī)基礎(chǔ)課件第四章數(shù)據(jù)的運(yùn)算_第5頁
已閱讀5頁,還剩57頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第四章第四章 數(shù)據(jù)運(yùn)算數(shù)據(jù)運(yùn)算數(shù)據(jù)運(yùn)算分類數(shù)據(jù)運(yùn)算分類:算術(shù)運(yùn)算、移位運(yùn)算、邏輯運(yùn)算算術(shù)運(yùn)算、移位運(yùn)算、邏輯運(yùn)算學(xué)習(xí)目標(biāo)學(xué)習(xí)目標(biāo): 列出在數(shù)據(jù)上進(jìn)行的三類運(yùn)算列出在數(shù)據(jù)上進(jìn)行的三類運(yùn)算 在位模式上進(jìn)行一元和二元邏輯運(yùn)算在位模式上進(jìn)行一元和二元邏輯運(yùn)算 區(qū)分邏輯移位運(yùn)算和算術(shù)移位運(yùn)算區(qū)分邏輯移位運(yùn)算和算術(shù)移位運(yùn)算 在位模式上進(jìn)行邏輯移位運(yùn)算在位模式上進(jìn)行邏輯移位運(yùn)算 在以二進(jìn)制補(bǔ)碼形式存儲(chǔ)的整數(shù)上進(jìn)行算術(shù)移位運(yùn)算在以二進(jìn)制補(bǔ)碼形式存儲(chǔ)的整數(shù)上進(jìn)行算術(shù)移位運(yùn)算 在以二進(jìn)制補(bǔ)碼形式存儲(chǔ)的整數(shù)上進(jìn)行加法和減法運(yùn)算在以二進(jìn)制補(bǔ)碼形式存儲(chǔ)的整數(shù)上進(jìn)行加法和減法運(yùn)算 在以符號(hào)加絕對值形式存儲(chǔ)的整數(shù)上進(jìn)行加法

2、和減法運(yùn)算在以符號(hào)加絕對值形式存儲(chǔ)的整數(shù)上進(jìn)行加法和減法運(yùn)算 在以浮點(diǎn)格式存儲(chǔ)的實(shí)數(shù)上進(jìn)行加法和減法運(yùn)算在以浮點(diǎn)格式存儲(chǔ)的實(shí)數(shù)上進(jìn)行加法和減法運(yùn)算1. 理解邏輯和算術(shù)運(yùn)算的一些應(yīng)用,如置位、復(fù)位和指定位理解邏輯和算術(shù)運(yùn)算的一些應(yīng)用,如置位、復(fù)位和指定位的反轉(zhuǎn)等的反轉(zhuǎn)等4.1 4.1 邏輯運(yùn)算邏輯運(yùn)算邏輯運(yùn)算:是指那些應(yīng)用于模式中的一個(gè)二進(jìn)制位,或在兩個(gè)模式中相應(yīng)的兩個(gè)二進(jìn)制位的相同基本運(yùn)算。可以在位層次上和模式層次上定義邏輯運(yùn)算。模式層次上的邏輯運(yùn)算是具有相同類型的位層次上的n個(gè)邏輯運(yùn)算,這里的n就是模式中的位的數(shù)目。位層次上的邏輯運(yùn)算位層次上的邏輯運(yùn)算二進(jìn)制位的位層次上的運(yùn)算:非(NOT)與

3、(AND)或(OR)異或(XOR)Unary and binary operationsLogical operationsTruth tablesNOT operatorUse the NOT operator on the bit pattern 10011000AND operatorUse the AND operator on bit patterns 10011000 and 00101010.Inherent rule of the AND operatorOR operatorUse the OR operator on bit patterns 10011001 and 00

4、101110Inherent rule of the OR operatorXOR operatorUse the XOR operator on bit patterns 10011001 and 00101110.Inherent rule of the XOR operatorMask(掩碼掩碼)與運(yùn)算的一個(gè)應(yīng)用就是把一個(gè)位模式的指定位復(fù)位(置0)。這種情況下的第二個(gè)輸入稱為掩碼掩碼中的0位對第一個(gè)輸入中相應(yīng)的位進(jìn)行復(fù)位掩碼中的1位使得第一個(gè)輸入中相應(yīng)的位保持不變Mask(掩碼掩碼)Example of unsetting specific bitsUse a mask to unset

5、 (clear) the 5 leftmost bits of a pattern. Test the mask with the pattern 10100110.Imagine a power plant that pumps water to a city using eight pumps. The state of the pumps (on or off) can be represented by an 8-bit pattern. For example, the pattern 11000111 shows that pumps 1 to 3 (from the right)

6、, 7 and 8 are on while pumps 4, 5, and 6 are off. Now assume pump 7 shuts down. How can a mask show this situation?Example of setting specific bitsUse a mask to set the 5 leftmost bits of a pattern. Test the mask with the pattern 10100110.Using the power plant example, how can you use a mask to to s

7、how that pump 6 is now turned on? Figure 4-16Example of flipping specific bitsUse a mask to flip the 5 leftmost bits of a pattern. Test the mask with the pattern 10100110.4.2 4.2 移位運(yùn)算移位運(yùn)算移位運(yùn)算移動(dòng)模式中的位,改變位的位置可以向左或向右移動(dòng)移位運(yùn)算分類:邏輯移位運(yùn)算和算術(shù)移位運(yùn)算4.2.1 4.2.1 邏輯移位運(yùn)算邏輯移位運(yùn)算邏輯移位運(yùn)算應(yīng)用于不帶符號(hào)位的數(shù)的模式。原因是這些移位運(yùn)算可能會(huì)改變數(shù)的符號(hào),此符號(hào)

8、是由模式中最左位定義的。分類:邏輯移位、循環(huán)移位1. 邏輯移位邏輯移位例題 對位模式10011000使用邏輯左移運(yùn)算解 解如下所示,最左位被丟棄,0作為最右位被插入 1 0 0 1 1 0 0 0 原始的 0 0 1 1 0 0 0 0 移位后1. 循環(huán)移位循環(huán)移位例題 對位模式10011000使用邏輯左移運(yùn)算解 解如下所示,最左位被回環(huán),成為最右位 1 0 0 1 1 0 0 0 原始的 0 0 1 1 0 0 0 1 移位后4.2.2 4.2.2 算術(shù)移位運(yùn)算算術(shù)移位運(yùn)算算術(shù)移位運(yùn)算假定位模式是以二進(jìn)制補(bǔ)碼格式表示的帶符號(hào)位的整數(shù)算術(shù)右移被用來對整數(shù)除以2算術(shù)左移被用來對整數(shù)乘以2算術(shù)右移

9、保留符號(hào)位,但同時(shí)也把它復(fù)制,放入相鄰的右邊的位中,因此,符號(hào)位被保存算術(shù)左移丟棄符號(hào)位,接受它的右邊的位作為符號(hào)位。若新的符號(hào)位與原先的相同,那么運(yùn)算成功,否則發(fā)生上溢或下溢,結(jié)果是非法的例題 對位模式10011000使用算術(shù)右移,模式是二進(jìn)制補(bǔ)碼格式的整數(shù)解 解如下所示,最左位被保留,被復(fù)制到相鄰的右邊的位中 1 0 0 1 1 0 0 0 原始的 1 1 0 0 1 1 0 0 移位后原始數(shù)是-103,新的數(shù)是-52,它是-103被除以2并取整的結(jié)果例題 對位模式11011001使用算術(shù)左移,模式是二進(jìn)制補(bǔ)碼格式的整數(shù)解 解如下所示,最左位被丟棄,0作為最右位被插入 1 1 0 1 1

10、0 0 1 原始的 1 0 1 1 0 0 1 0 移位后原始數(shù)是-39,新的數(shù)是-78,原始數(shù)被乘以2.因?yàn)闆]有下溢的發(fā)生,所以運(yùn)算合法。例題 對位模式01111111使用算術(shù)左移,模式是二進(jìn)制補(bǔ)碼格式的整數(shù)解 解如下所示,最左位被丟棄,0作為最右位被插入 0 1 1 1 1 1 1 1 原始的 1 1 1 1 1 1 1 0 移位后原始數(shù)是127,新的數(shù)是-2,因?yàn)樯弦绨l(fā)生,所以結(jié)果非法例題 邏輯運(yùn)算和邏輯移位運(yùn)算提供了操縱位模式的工具。假設(shè)有一個(gè)模式在判斷過程中需要知道使用此模式的第三位(從右起),需要知道這特殊的位是0或1.下面顯示如何找到這位的 h g f e d c b a 原始的

11、 0 h g f e d c b 一次右移 0 0 h g f e d c 二次右移AND 0 0 0 0 0 0 0 1 掩碼 0 0 0 0 0 0 0 c 結(jié)果4.3 4.3 算術(shù)運(yùn)算算術(shù)運(yùn)算算術(shù)運(yùn)算包括加、減、乘、除等適用于整數(shù)和浮點(diǎn)數(shù)4.3.1 4.3.1 整數(shù)的算術(shù)運(yùn)算整數(shù)的算術(shù)運(yùn)算1. 二進(jìn)制補(bǔ)碼整數(shù)的加減法整數(shù)通常是以二進(jìn)制補(bǔ)碼形式存儲(chǔ)的。二進(jìn)制補(bǔ)碼表示法的一個(gè)優(yōu)點(diǎn)是加法和減法之間沒有區(qū)別Add two numbers in twos complement representation: (+17) + (+22) (+39)Carry 10 0 0 1 0 0 0 1 0 0

12、 0 1 0 1 1 0-Result0 0 1 0 0 1 1 1 39Add two numbers in twos complement representation: (+24) + (-17) (+7)Carry 1 1 1 1 10 0 0 1 1 0 0 0 1 1 1 0 1 1 1 1-Result0 0 0 0 0 1 1 1 +7Add two numbers in twos complement representation: (-35) + (+20) (-15)Carry 1 1 11 1 0 1 1 1 0 1 0 0 0 1 0 1 0 0-Result1 1

13、1 1 0 0 0 1 -15Add two numbers in twos complement representation: (+127) + (+3) (+130)Carry 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 -Result 1 0 0 0 0 0 1 0 Figure 4-2Twos complement numbers visualizationSubtract 62 from 101 in twos complement: (+101) - (+62) (+101) + (-62)Carry 1 10 1 1 0 0 1

14、0 1 1 1 0 0 0 0 1 0-Result0 0 1 0 0 1 1 1 39The leftmost carry is discarded.2. 2. 符號(hào)加絕對值整數(shù)的加減法符號(hào)加絕對值整數(shù)的加減法用符號(hào)加絕對值表示的整數(shù)的加法和減法看起來非常復(fù)雜有4種不同的符號(hào)組合 需要考慮8種不同的情況 流程圖參考課本第59頁流程圖解釋:1)檢查運(yùn)算:如果運(yùn)算是減法,那么改變第二個(gè)整數(shù)(B)的符號(hào),這就意味著只需要考慮兩符號(hào)整數(shù)的加法;2)對兩符號(hào)應(yīng)用XOR運(yùn)算,如果結(jié)果(存儲(chǔ)在臨時(shí)單元S中)是0,則意味著符號(hào)是相同的(或者兩符號(hào)都是正的,或者兩符號(hào)都是負(fù)的);3)如果符號(hào)是相同的,R=(A

15、M+BM),則需要相加絕對值,結(jié)果的符號(hào)是相同的符號(hào),所以得到:RM=(AM)+(BM)和RS=AS這里下標(biāo)M意味著絕對值,下標(biāo)S意味著符號(hào),需要注意上溢。兩個(gè)絕對值相加時(shí),可能會(huì)發(fā)生上溢,它必須被報(bào)告,處理過程終止。4)如果符號(hào)不同,R=(AM-BM),則需要從A中減去B,然后對符號(hào)進(jìn)行判斷,不是一位接一位地相減,而是取第二個(gè)絕對值的二進(jìn)制補(bǔ)碼,相加它們。結(jié)果的符號(hào)是較大絕對值整數(shù)的符號(hào)。A。可以證明,如果AMBM,那就有上溢,結(jié)果是一個(gè)正數(shù)。因此,如果有上溢,則舍棄上溢,使結(jié)果的符號(hào)取A的符號(hào);B。可以證明,如果AMBM,那就沒有上溢,結(jié)果是一個(gè)負(fù)數(shù)。因此,如果沒有上溢,則取結(jié)果的二進(jìn)制補(bǔ)

16、,使結(jié)果的符號(hào)取B的符號(hào);例 以符號(hào)加絕對值格式存儲(chǔ)兩整數(shù)A和B,顯示B是如何被加到A上的。 A=(0 0010001)2 B=(0 0010110)2解 運(yùn)算是相加,B的符號(hào)沒有改變 S=AS XOR BS =0, RM=AM+BM 和RS=AS 沒有上溢 沒有上溢 1 進(jìn)位AS 0 0 0 1 0 0 0 1 AMBS 0 + 0 0 1 0 1 1 0 BMRS 0 0 1 0 0 1 1 1 RM 例 以符號(hào)加絕對值格式存儲(chǔ)兩整數(shù)A和B,顯示B是如何被加到A上的。 A=(0 0010001)2 B=(1 0010110)2解 運(yùn)算是相加,B的符號(hào)沒有改變 S=AS XOR BS =1,

17、 RM=AM+(M+1) 沒有上溢 取RM的二進(jìn)制補(bǔ)碼, R的符號(hào)是B的符號(hào) 沒有上溢 進(jìn)位AS 0 0 0 1 0 0 0 1 AMBS 1 + 1 1 0 1 0 1 0 (M+1) 1 1 1 1 1 0 1 1 RM RS 1 0 0 0 0 1 0 1 RM=(M+1)例 以符號(hào)加絕對值格式存儲(chǔ)兩整數(shù)A和B,顯示B是如何被加到A上的。 A=(1 1010001)2 B=(1 0010110)2解 運(yùn)算是相減,SB=B,S=AS XOR BS =1, RM=AM+(M+1) 沒有上溢 RM的值就是最終的值, R的符號(hào)是A的符號(hào) 有上溢 1 進(jìn)位AS 1 1 0 1 0 0 0 1 AM

18、BS 1 + 1 1 0 1 0 1 0 (M+1) RS 1 0 1 1 1 0 1 1 RM 4.3.2 4.3.2 實(shí)數(shù)的算術(shù)運(yùn)算實(shí)數(shù)的算術(shù)運(yùn)算像加、減、乘、除這樣的算術(shù)運(yùn)算都能應(yīng)用于浮點(diǎn)數(shù)格式存儲(chǔ)的實(shí)數(shù)上。兩實(shí)數(shù)的乘法涉及兩個(gè)用符號(hào)加絕對值表示的整數(shù)的乘法兩實(shí)數(shù)的除法涉及兩個(gè)用符號(hào)加絕對值表示的整數(shù)的除法實(shí)數(shù)的加減法實(shí)數(shù)的加減法以浮點(diǎn)數(shù)格式存儲(chǔ)的實(shí)數(shù)的加法和減法被簡化為小數(shù)點(diǎn)對齊后以符號(hào)加絕對值格式(符號(hào)和尾數(shù)的組合)存儲(chǔ)的兩整數(shù)的加法和減法課本第61頁顯示了處理過程的簡化版本簡化的過程如下:1)如果兩數(shù)(A或B)中任一個(gè)為0,那么令結(jié)果為0,過程終止;2)如果運(yùn)算是減法,那么改變第二

19、個(gè)數(shù)(B)的符號(hào)來模擬加法;3)通過在尾數(shù)中包含隱含的1和增加指數(shù),將兩個(gè)數(shù)去規(guī)范化;4)然后統(tǒng)一指數(shù),這意味著增加較小的指數(shù),移位相應(yīng)的尾數(shù),直到兩個(gè)數(shù)具有相同的指數(shù);5)把每個(gè)數(shù)的符號(hào)和尾數(shù)的組合看成一個(gè)符號(hào)加絕對值格式的整數(shù);6)再次去規(guī)范化。例 顯示計(jì)算機(jī)是如何計(jì)算結(jié)果的: (+5.75)+(+161.875)=(+167.625)解: S E M A 0 10000001 01110000000000000000000 B 0 10000110 01000011110000000000000去規(guī)范化 S E 去規(guī)范化的M A 0 10000010 101110000000000000000000 B 0 10000111 101000011110000000000000對齊尾數(shù) S E 去規(guī)范化的M A 0 10000111 000001011100000000000000 B 0 10000111 101000011110000000000000進(jìn)行符號(hào)加絕對值加法 S E 去規(guī)范化的M R 0 10000111 101001111010000000000000規(guī)范化 S E M R 0 10000110 01001111010000000000000

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論