版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1.2運算基礎(chǔ)二、二進(jìn)制的運算和計算機中的四則運算一、各種進(jìn)制數(shù)的表示和它們之間的轉(zhuǎn)換三、各種數(shù)制的編碼、字符編碼、BCD碼、
ASCII碼、漢字編碼四、邏輯電路和邏輯運算計算機中的各種數(shù)制在計算機內(nèi)部,信息廣泛采用二進(jìn)制形式表示,有時還會使用十進(jìn)制、八進(jìn)制、十六進(jìn)制。2進(jìn)制,用兩個阿拉伯?dāng)?shù)字:0、1;8進(jìn)制,用八個阿拉伯?dāng)?shù)字:0、1、2、3、4、5、6、7;10進(jìn)制,用十個阿拉伯?dāng)?shù)字:0、1、2、3、4、5、6、7、8、9;16進(jìn)制,用十六個阿拉伯?dāng)?shù)字……等等,阿拉伯人或說是印度人,只發(fā)明了10個數(shù)字?。?6進(jìn)制就是逢16進(jìn)1,但我們只有0~9這十個數(shù)字,所以我們用A,B,C,D,E,F(xiàn)這五個字母來分別表示10,11,12,13,14,15。字母不區(qū)分大小寫。對任意進(jìn)位制數(shù)都可以寫成按權(quán)展開的多項式的和的形式:十進(jìn)制使用廣泛,它主要用在計算機外部。特點:一是十進(jìn)制由十個不同的數(shù)符組成:0、1、2、3、4、5、6、7、8、9,即基數(shù)為“10”;二是十進(jìn)制遵循每相鄰兩位“逢十進(jìn)一”的原則。二進(jìn)制是用于計算機內(nèi)部描述各種信息的一種數(shù)制。特點:一是二進(jìn)制由“0”和“1”兩個符號構(gòu)成,即基數(shù)為2;二是每相鄰兩位遵循“逢二進(jìn)一”的原則。K=Kn-1×Rn-1+Kn-2×Rn-2+……+K1×R1+K0×R0+K-1×R-1+K-2×R-2+……=Ki×Ri式中:i--數(shù)位;m,n--正整數(shù);
R--基數(shù);Ki--第i位數(shù)碼。為什么需要八進(jìn)制和十六進(jìn)制?
編程中,我們常用的還是10進(jìn)制……必竟C/C++是高級語言。比如:inta=100,b=99;
不過,由于數(shù)據(jù)在計算機中的表示,最終以二進(jìn)制的形式存在,所以有時候使用二進(jìn)制,可以更直觀地解決問題。但,二進(jìn)制數(shù)太長了。比如int類型占用4個字節(jié),32位。比如100,用int類型的二進(jìn)制數(shù)表達(dá)將是:000000000000000001100100面對這么長的數(shù)進(jìn)行思考或操作,沒有人會喜歡。用16進(jìn)制或8進(jìn)制可以解決這個問題。因為,進(jìn)制越大,數(shù)的表達(dá)長度也就越短。不過,為什么偏偏是16或8進(jìn)制,而不其它的,諸如9或20進(jìn)制呢?
2、8、16,分別是2的1次方,3次方,4次方。這一點使得三種進(jìn)制之間可以非常直接地互相轉(zhuǎn)換。8進(jìn)制或16進(jìn)制縮短了二進(jìn)制數(shù),但保持了二進(jìn)制數(shù)的表達(dá)特點。1)二進(jìn)制數(shù)用B(Binary),八進(jìn)制數(shù)用O(Octonary),O也可用Q表示,十進(jìn)制數(shù)用D(decimal),十六進(jìn)制數(shù)用H(Hexadecimal)表示.:101B,123Q,789,10CEH分別表示二進(jìn)制、八進(jìn)制、十進(jìn)制和十六進(jìn)制數(shù)2)給數(shù)加括號并加數(shù)字下標(biāo)如(1001)2,,(2357)8,(8790)10,(1AFF)16分別表示二進(jìn)制、八進(jìn)制、十進(jìn)制和十六進(jìn)制。書寫規(guī)則常用的書寫方法有兩種:應(yīng)該還有其他寫法,如c++中的表示等。數(shù)制之間的轉(zhuǎn)換下面是豎式:將01100100換算成十進(jìn)制第0位0*20
=
0第1位0*21
=
0第2位1*22
=
4第3位0*23
=
0第4位0*24
=
0第5位1*25
=32第6位1*26
=64第7位0*27
=
0
+---------------------------
100
2進(jìn)制數(shù)轉(zhuǎn)換為10進(jìn)制數(shù)用橫式計算為:0*20+0*21+1*22+1*23+0*24+1*25+1*26+0*27=100
0乘以多少都是0,所以我們也可以直接跳過值為0的位:1*22+1*23+
1*25+1*26=100二進(jìn)制數(shù)00101010十進(jìn)制數(shù)4225+23+21=42轉(zhuǎn)換方法:e.g110進(jìn)制數(shù)轉(zhuǎn)換為2進(jìn)制數(shù)給你一個十進(jìn)制,比如:6,如果將它轉(zhuǎn)換成二進(jìn)制數(shù)呢?10進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù),這是一個連續(xù)除2的過程:把要轉(zhuǎn)換的數(shù),除以2,得到商和余數(shù),將商繼續(xù)除以2,直到商為0。最后將所有余數(shù)倒序排列,得到數(shù)就是轉(zhuǎn)換結(jié)果。十進(jìn)制數(shù)58二進(jìn)制數(shù)00111010轉(zhuǎn)換方法:
2|58……02|1……12|29……12|14……02|7……12|3……102|1……1e.g2取余數(shù)對應(yīng)二進(jìn)制位數(shù)223……余1……K0最低位211……余1……K125……余1……K222……余0……K321……余1……K4最高位
即:23D=10111B總結(jié):十進(jìn)制整數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)用“除2取余倒讀法”轉(zhuǎn)換成其它進(jìn)制數(shù)就可概括為“除R取余倒讀法”。例:十進(jìn)制數(shù)23轉(zhuǎn)換成二進(jìn)制數(shù)對應(yīng)二進(jìn)制位數(shù)取整數(shù)K-1最高位1K-21K-30K-4最低位10.8125×
21.62500.6250×
21.25000.2500×
20.50000.5000×
21.0000即:0.8125D=0.1101B總結(jié):十進(jìn)制數(shù)轉(zhuǎn)換成其它進(jìn)制數(shù)方法“乘R取整順讀”例:將十進(jìn)制數(shù)0.8125轉(zhuǎn)換成對應(yīng)的二進(jìn)制數(shù)十六進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù)十六進(jìn)制數(shù)的第0位的權(quán)值為16的0次方,第1位的權(quán)值為16的1次方,第2位的權(quán)值為16的2次方……所以,在第N(N從0開始)位上,如果是數(shù)X(X大于等于0,并且X小于等于15,即:F)表示的大小為X*16的N次方。假設(shè)有一個十六進(jìn)數(shù)2AF5,那么如何換算成10進(jìn)制呢?用豎式計算:2AF5換算成10進(jìn)制:
第0位:
5*160=5第1位:
F*161=240第2位:
A*162=2560第3位:
2*163=8192
+-------------------------------------
10997
直接計算就是:5*160
+F*161+A*162+2*163=10997(別忘了,在上面的計算中,A表示10,而F表示15)現(xiàn)在可以看出,所有進(jìn)制換算成10進(jìn)制,關(guān)鍵在于各自的權(quán)值不同假設(shè)有人問你,十進(jìn)數(shù)1234為什么是一千二百三十四?你盡可以給他這么一個算式:1234=1*103+2*102+3*101+4*100三位組合法:把二進(jìn)制數(shù)以小數(shù)點為中心,分別向左、右每三位分為一組,不夠補零;然后,每組用等值的八進(jìn)制數(shù)碼表示。例:將二進(jìn)制數(shù)101.1011轉(zhuǎn)換成等值八進(jìn)制數(shù).(101.1011)2=101.101
100=(5.54)8分解三位法:把八進(jìn)數(shù)的各位依次用對應(yīng)的三位二進(jìn)制數(shù)碼表示。例:將八進(jìn)制數(shù)12.56轉(zhuǎn)換成等值二進(jìn)制數(shù)(12.56)8=001010.101110=(1010.10111)2二進(jìn)制數(shù)和八進(jìn)制數(shù)之間的轉(zhuǎn)換與二進(jìn)制轉(zhuǎn)換成八進(jìn)制類似用“四位組合法和分解四位法”例:將二進(jìn)制數(shù)101110轉(zhuǎn)換成等值十六進(jìn)制數(shù)。(101110)2=0010
1110=(2E)16將十六進(jìn)制數(shù)5.B8轉(zhuǎn)換成等值二進(jìn)制數(shù)分別轉(zhuǎn)換成等值(5.B8)16=0101.1011
1000=(101.10111)2二進(jìn)數(shù)與十六進(jìn)制數(shù)之間的轉(zhuǎn)換二進(jìn)制十六進(jìn)制十進(jìn)制BCD碼00000000000001110001001022001000113300110100440100010155010101106601100111770111100088100010019910011010A101011B111100C121101D131110E141111F15數(shù)碼對照表機器數(shù):“數(shù)”以某種方式存儲在計算機中,一般稱為機器數(shù)。機器數(shù)的范圍一個計算機的字長為8位或16位時,它的無符號整數(shù)的最大值分別是(11111111)2=(255)102=(65535)102.機器數(shù)的符號無符號數(shù):不考慮正負(fù)的數(shù),相反稱為有符號數(shù)有符號數(shù):計算機中有符號數(shù)的符號被數(shù)字化了;一般最高位為0表示正號,為1表示負(fù)號常用的編碼方式有三種:原碼、反碼、補碼。數(shù)據(jù)的表示
無符號數(shù)與有符號數(shù)的區(qū)別僅在于,無符號數(shù)沒有符號位,全部有效位均用來表示數(shù)的大小。在計算機中,無符號數(shù)常用來表示地址。1.無符號數(shù)(1)原碼符號位用0表示正,用1表示負(fù),數(shù)值部分不變。原碼和真值的關(guān)系如下式所示:2.有符號數(shù)例如:求X=+105的原碼(X)原=01101001
求X=-105的原碼(X)原=11101001
原碼表示簡單直觀,但0的表示不唯一,加減運算復(fù)雜,如果兩個異號數(shù)相加或兩個同號數(shù)相減就要做減法。 (2)反碼正數(shù)的反碼與原碼相同,負(fù)數(shù)的反碼是符號位用1表示,數(shù)值位按位取反。原碼和真值的關(guān)系如下式所示:例如:X=-4,(X)原=10000100,(X)反=11111011,
(X)反=10010100,則其原碼為11101011,為-107
反碼的缺點與原碼類似,多用在求反邏輯運算中。(3)補碼正數(shù)的補碼與原碼相同;
負(fù)數(shù)補碼為其反碼加1;
0無正負(fù)之分;
n位二進(jìn)制數(shù)補碼的表示范圍為+(2n-1-1)~-2n-1
補碼和真值的關(guān)系如下:例如:X=-4,(X)原=10000100,(X)補=11111100
補碼運算時可以將符號位參與運算,可以用加法代替減法運算,提高了運算速度。計算機中的有符號二進(jìn)制數(shù)據(jù)默認(rèn)為補碼表示。X為正數(shù)時有:(X)原=(X)反=(X)補X為負(fù)數(shù)時有:(X)補=(X)反+1,((X)補)補=(X)原
((X)反)反=(X)原
補碼的求法1)根據(jù)定義求:(X)補=2n+X如X=-,n=8,則(X)補=28+(-)=100000000-=,有減法運算不方便。2)利用原碼求:一個負(fù)數(shù)的補碼等于其原碼除符號位以外的各位按位取反,再在最低位加1。如X=-,(X)原=,則(X)補=+1=3)簡便的求補:從原碼的最低位起,到出現(xiàn)第一個1以前(包括第一個1)的數(shù)字不變,以后逐位取反,但符號位不變。如X=-1010111,(X)原=,則(X)補=X=-,則(X)原=11110000,則(X)補=3.機器數(shù)中小數(shù)點位置(1)定點數(shù):小數(shù)點位置固定不變。浮點數(shù):小數(shù)點位置可以浮動。定點數(shù)的表示方法純整數(shù):小數(shù)點在數(shù)的最右方。純小數(shù):小數(shù)點在數(shù)的符號位之后。純整數(shù)和純小數(shù)都可以用原碼、反碼、補碼來表示。如:87.37=0.8737×102同樣(110.11)2=(0.11011×23)2
這就是浮點數(shù)表示法一個二進(jìn)制數(shù)N
可表示為:N
=±2±P×S(N,P,S均為二進(jìn)制數(shù))S稱為尾數(shù),即全部的有效數(shù)字(一般數(shù)值小于1),2前面的±號是尾數(shù)的符號,P稱為階碼(一般為整數(shù))即指明小數(shù)點的實際位置,2右上方的±號是階碼的符號。浮點數(shù)在機器中的編碼分成兩部分,排列如下:階符階碼P尾符尾碼S(2)浮點數(shù)的表示方法Pentium將階碼以一種偏置形式存放于格式之中,即將真階碼加上一個常數(shù)偏置值才是格式階碼,以保證偏置后的格式階碼恒為正數(shù)。單精度的階碼偏置值為+127,雙精度的階碼偏置值為+1023,擴展精度的階碼偏置值為+16383。一個浮點數(shù)數(shù)的真階碼要通過它的格式階碼減去偏置值而得到。Pentium微處理器支持的浮點格式現(xiàn)在想知道,-5在計算機中如何表示?在計算機中,負(fù)數(shù)以其正值的補碼形式表達(dá)。原碼:一個整數(shù),按照絕對值大小轉(zhuǎn)換成的二進(jìn)制數(shù),稱為原碼。比如0000000000是5的原碼。反碼:將二進(jìn)制數(shù)按位取反,所得的新二進(jìn)制數(shù)稱為原二進(jìn)制數(shù)的反碼。取反操作指:原為1,得0;原為0,得1。(1變0;0變1)比如:將0000000000每一位取反,得11111111111111111111111111111010。稱:11111111111111111111111111111010是0000000000的反碼。反碼是相互的,所以也可稱:11111111111111111111111111111010和0000000000互為反碼?,F(xiàn)在想知道,-5在計算機中如何表示?(續(xù))補碼:反碼加1稱為補碼。也就是說,要得到一個數(shù)的補碼,先得到反碼,然后將反碼加上1,所得數(shù)稱為補碼。比如:0000000000的反碼是:11111111111111111111111111111010。那么,補碼為:11111111111111111111111111111010+1=11111111111111111111111111111011所以,-5在計算機中表達(dá)為:11111111111111111111111111111011。轉(zhuǎn)換為十六進(jìn)制:0xFFFFFFFB(在c中)或0FFFFFFFBH(在匯編中)。BCD(BinaryCodeDecimal)碼:把每1位十進(jìn)制數(shù)用4位二進(jìn)制編碼表示的數(shù)字編碼。它的全名為十進(jìn)制數(shù)的二進(jìn)制編碼(二-十進(jìn)制編碼)8421BCD碼:每個十進(jìn)制位用4位二進(jìn)制數(shù)表示,而4位二進(jìn)制數(shù)的位權(quán)分別為8、4、2、1,故命名之。十進(jìn)制數(shù)8421BCD碼十進(jìn)制數(shù)8421BCD碼000008100010001910012001010000100003001111000100014010012000100105010113000100116011014000101007011115000101014.數(shù)字編碼8421BCD編碼表例:(36.97)10=(00110110.10010111)BCD(100100110001.01000101)BCD=(931.45)10BCD碼壓縮型BCD碼用4位二進(jìn)制數(shù)表示1位十進(jìn)制數(shù)非壓縮型BCD碼用8位二進(jìn)制數(shù)表示1位十進(jìn)制數(shù)1).ASCII編碼:是由美國國家標(biāo)準(zhǔn)委員會制定的一種包括數(shù)字、字母、通用符號在內(nèi)的字符編碼集。ASCII碼是一種7位二進(jìn)制編碼,能表示27=128個國際上最通用的西文字符。5.字符型數(shù)據(jù)的表示ASCII編碼字符集包括4類常用的字符。(1)數(shù)字0~9對應(yīng)的ASCII碼值分別為0110001B~0111001B用十六進(jìn)制數(shù)表示為31H~39H(2)字母包括26個大寫英文字母和26個小寫英文字母。字母A~Z的ASCII碼值為41H~5AH,字母a~z的ASCII碼值為61H~7AH??梢钥闯觯簩?yīng)的大、小寫字母的ASCII碼值相差20H。(3)通用符號如:+、-、=、*、/、,等共32個。(4)控制字符包括空格SP(20H)、回車CR(0DH)等共34個。注:ASCII碼是一種7位編碼,但它存放時必須占全一字字節(jié),也即占用8位,一般最高位置0,其余7位是ASCII值。ASCII碼表規(guī)律:小寫字母大于大寫字母,字母大于數(shù)字,所有的字符都大于空格,空格大于所有的控制字符。2).漢字編碼漢字與英文差別很大:象形字、數(shù)目多、形和劃差異大計算機常用鍵盤以拼音文字為主解決錄入問題:與拼音鍵盤兼容--外碼(音、形、劃)在計算機中表示漢字需安排一個確定的編碼且與ascii易于區(qū)分:GB2312-80,簡國標(biāo)碼,再到機內(nèi)碼。二進(jìn)制的運算和計算機中的四則運算1.算術(shù)運算 算術(shù)運算是指利用+、-、×、÷、()等符號連接二進(jìn)制數(shù)完成的運算。(自然運算規(guī)則與十進(jìn)制同)
計算機中完成二進(jìn)制的四則運算 完成二進(jìn)制的四則運算最終都是進(jìn)行加法運算。 加法:……;乘法:部分積右移加被乘數(shù)或0
減法:加補碼;除法:部分余數(shù)左移加除數(shù)補碼或01)二進(jìn)制的加減運算兩個1位二進(jìn)制數(shù)的加、減運算規(guī)則加法規(guī)則:減法規(guī)則:
0+0=00–0=00+1=11–1=1(借位1)
1+0=11–0=11+1=0(進(jìn)位1)1–1=0多位二進(jìn)制數(shù)加、減運算法則:逢二進(jìn)一、借一作二例:求11000011B+100101B=?求11000011B-100101B=?
11000011B11000011B+100101B-100101B11101000B10011110B參見p.7二進(jìn)制的補碼運算規(guī)則:[X+Y]
補=[X]補+[Y]補
[X-Y]補=[X]補-[Y]補例:[32+25]補
=[32]補+[25]補=00100000+00111001=[57]補
[32-25]補
=[32]補-[25]補=00100000-=00100000+11100111=(1)00000111=[7]補2)二進(jìn)制的補碼運算
分析:兩數(shù)相加時,只有當(dāng)
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度物流倉儲承包經(jīng)營合同賠償與供應(yīng)鏈管理協(xié)議2篇
- 二零二五版德國高校博士教師招聘及雇傭服務(wù)合同3篇
- 二零二五年度租賃代理風(fēng)險控制合同3篇
- 個人發(fā)起離婚合同書標(biāo)準(zhǔn)模板版B版
- 2024年飛躍:專業(yè)電競團(tuán)隊贊助協(xié)議3篇
- 個性化汽車抵押貸款協(xié)議樣本(2024版)
- 2024年跨平臺整合傳播服務(wù)協(xié)議3篇
- 2024版體育賽事代理執(zhí)行合同樣本3篇
- 二零二五年新型環(huán)保建材生產(chǎn)與建筑廢棄物回收合同3篇
- 西南財經(jīng)大學(xué)天府學(xué)院《半導(dǎo)體芯片技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- SY-T 5333-2023 鉆井工程設(shè)計規(guī)范
- 蔣詩萌小品《誰殺死了周日》臺詞完整版
- TB 10010-2008 鐵路給水排水設(shè)計規(guī)范
- 黑色素的合成與美白產(chǎn)品的研究進(jìn)展
- 建筑史智慧樹知到期末考試答案2024年
- 金蓉顆粒-臨床用藥解讀
- 社區(qū)健康服務(wù)與管理教案
- 2023-2024年家政服務(wù)員職業(yè)技能培訓(xùn)考試題庫(含答案)
- 2023年(中級)電工職業(yè)技能鑒定考試題庫(必刷500題)
- 藏歷新年文化活動的工作方案
- 果酒釀造完整
評論
0/150
提交評論