




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1.2運算基礎(chǔ)二、二進制的運算和計算機中的四則運算一、各種進制數(shù)的表示和它們之間的轉(zhuǎn)換三、各種數(shù)制的編碼、字符編碼、BCD碼、
ASCII碼、漢字編碼四、邏輯電路和邏輯運算計算機中的各種數(shù)制在計算機內(nèi)部,信息廣泛采用二進制形式表示,有時還會使用十進制、八進制、十六進制。2進制,用兩個阿拉伯?dāng)?shù)字:0、1;8進制,用八個阿拉伯?dāng)?shù)字:0、1、2、3、4、5、6、7;10進制,用十個阿拉伯?dāng)?shù)字:0、1、2、3、4、5、6、7、8、9;16進制,用十六個阿拉伯?dāng)?shù)字……等等,阿拉伯人或說是印度人,只發(fā)明了10個數(shù)字?。?6進制就是逢16進1,但我們只有0~9這十個數(shù)字,所以我們用A,B,C,D,E,F(xiàn)這五個字母來分別表示10,11,12,13,14,15。字母不區(qū)分大小寫。對任意進位制數(shù)都可以寫成按權(quán)展開的多項式的和的形式:十進制使用廣泛,它主要用在計算機外部。特點:一是十進制由十個不同的數(shù)符組成:0、1、2、3、4、5、6、7、8、9,即基數(shù)為“10”;二是十進制遵循每相鄰兩位“逢十進一”的原則。二進制是用于計算機內(nèi)部描述各種信息的一種數(shù)制。特點:一是二進制由“0”和“1”兩個符號構(gòu)成,即基數(shù)為2;二是每相鄰兩位遵循“逢二進一”的原則。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ù)碼。為什么需要八進制和十六進制?
編程中,我們常用的還是10進制……必竟C/C++是高級語言。比如:inta=100,b=99;
不過,由于數(shù)據(jù)在計算機中的表示,最終以二進制的形式存在,所以有時候使用二進制,可以更直觀地解決問題。但,二進制數(shù)太長了。比如int類型占用4個字節(jié),32位。比如100,用int類型的二進制數(shù)表達將是:000000000000000001100100面對這么長的數(shù)進行思考或操作,沒有人會喜歡。用16進制或8進制可以解決這個問題。因為,進制越大,數(shù)的表達長度也就越短。不過,為什么偏偏是16或8進制,而不其它的,諸如9或20進制呢?
2、8、16,分別是2的1次方,3次方,4次方。這一點使得三種進制之間可以非常直接地互相轉(zhuǎn)換。8進制或16進制縮短了二進制數(shù),但保持了二進制數(shù)的表達特點。1)二進制數(shù)用B(Binary),八進制數(shù)用O(Octonary),O也可用Q表示,十進制數(shù)用D(decimal),十六進制數(shù)用H(Hexadecimal)表示.:101B,123Q,789,10CEH分別表示二進制、八進制、十進制和十六進制數(shù)2)給數(shù)加括號并加數(shù)字下標(biāo)如(1001)2,,(2357)8,(8790)10,(1AFF)16分別表示二進制、八進制、十進制和十六進制。書寫規(guī)則常用的書寫方法有兩種:應(yīng)該還有其他寫法,如c++中的表示等。數(shù)制之間的轉(zhuǎn)換下面是豎式:將01100100換算成十進制第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進制數(shù)轉(zhuǎn)換為10進制數(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二進制數(shù)00101010十進制數(shù)4225+23+21=42轉(zhuǎn)換方法:e.g110進制數(shù)轉(zhuǎn)換為2進制數(shù)給你一個十進制,比如:6,如果將它轉(zhuǎn)換成二進制數(shù)呢?10進制數(shù)轉(zhuǎn)換成二進制數(shù),這是一個連續(xù)除2的過程:把要轉(zhuǎn)換的數(shù),除以2,得到商和余數(shù),將商繼續(xù)除以2,直到商為0。最后將所有余數(shù)倒序排列,得到數(shù)就是轉(zhuǎn)換結(jié)果。十進制數(shù)58二進制數(shù)00111010轉(zhuǎn)換方法:
2|58……02|1……12|29……12|14……02|7……12|3……102|1……1e.g2取余數(shù)對應(yīng)二進制位數(shù)223……余1……K0最低位211……余1……K125……余1……K222……余0……K321……余1……K4最高位
即:23D=10111B總結(jié):十進制整數(shù)轉(zhuǎn)換成二進制數(shù)用“除2取余倒讀法”轉(zhuǎn)換成其它進制數(shù)就可概括為“除R取余倒讀法”。例:十進制數(shù)23轉(zhuǎn)換成二進制數(shù)對應(yīng)二進制位數(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é):十進制數(shù)轉(zhuǎn)換成其它進制數(shù)方法“乘R取整順讀”例:將十進制數(shù)0.8125轉(zhuǎn)換成對應(yīng)的二進制數(shù)十六進制數(shù)轉(zhuǎn)換成十進制數(shù)十六進制數(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è)有一個十六進數(shù)2AF5,那么如何換算成10進制呢?用豎式計算:2AF5換算成10進制:
第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)在可以看出,所有進制換算成10進制,關(guān)鍵在于各自的權(quán)值不同假設(shè)有人問你,十進數(shù)1234為什么是一千二百三十四?你盡可以給他這么一個算式:1234=1*103+2*102+3*101+4*100三位組合法:把二進制數(shù)以小數(shù)點為中心,分別向左、右每三位分為一組,不夠補零;然后,每組用等值的八進制數(shù)碼表示。例:將二進制數(shù)101.1011轉(zhuǎn)換成等值八進制數(shù).(101.1011)2=101.101
100=(5.54)8分解三位法:把八進數(shù)的各位依次用對應(yīng)的三位二進制數(shù)碼表示。例:將八進制數(shù)12.56轉(zhuǎn)換成等值二進制數(shù)(12.56)8=001010.101110=(1010.10111)2二進制數(shù)和八進制數(shù)之間的轉(zhuǎn)換與二進制轉(zhuǎn)換成八進制類似用“四位組合法和分解四位法”例:將二進制數(shù)101110轉(zhuǎn)換成等值十六進制數(shù)。(101110)2=0010
1110=(2E)16將十六進制數(shù)5.B8轉(zhuǎn)換成等值二進制數(shù)分別轉(zhuǎn)換成等值(5.B8)16=0101.1011
1000=(101.10111)2二進數(shù)與十六進制數(shù)之間的轉(zhuǎn)換二進制十六進制十進制BCD碼00000000000001110001001022001000113300110100440100010155010101106601100111770111100088100010019910011010A101011B111100C121101D131110E141111F15數(shù)碼對照表機器數(shù):“數(shù)”以某種方式存儲在計算機中,一般稱為機器數(shù)。機器數(shù)的范圍一個計算機的字長為8位或16位時,它的無符號整數(shù)的最大值分別是(11111111)2=(255)102=(65535)102.機器數(shù)的符號無符號數(shù):不考慮正負的數(shù),相反稱為有符號數(shù)有符號數(shù):計算機中有符號數(shù)的符號被數(shù)字化了;一般最高位為0表示正號,為1表示負號常用的編碼方式有三種:原碼、反碼、補碼。數(shù)據(jù)的表示
無符號數(shù)與有符號數(shù)的區(qū)別僅在于,無符號數(shù)沒有符號位,全部有效位均用來表示數(shù)的大小。在計算機中,無符號數(shù)常用來表示地址。1.無符號數(shù)(1)原碼符號位用0表示正,用1表示負,數(shù)值部分不變。原碼和真值的關(guān)系如下式所示:2.有符號數(shù)例如:求X=+105的原碼(X)原=01101001
求X=-105的原碼(X)原=11101001
原碼表示簡單直觀,但0的表示不唯一,加減運算復(fù)雜,如果兩個異號數(shù)相加或兩個同號數(shù)相減就要做減法。 (2)反碼正數(shù)的反碼與原碼相同,負數(shù)的反碼是符號位用1表示,數(shù)值位按位取反。原碼和真值的關(guān)系如下式所示:例如:X=-4,(X)原=10000100,(X)反=11111011,
(X)反=10010100,則其原碼為11101011,為-107
反碼的缺點與原碼類似,多用在求反邏輯運算中。(3)補碼正數(shù)的補碼與原碼相同;
負數(shù)補碼為其反碼加1;
0無正負之分;
n位二進制數(shù)補碼的表示范圍為+(2n-1-1)~-2n-1
補碼和真值的關(guān)系如下:例如:X=-4,(X)原=10000100,(X)補=11111100
補碼運算時可以將符號位參與運算,可以用加法代替減法運算,提高了運算速度。計算機中的有符號二進制數(shù)據(jù)默認為補碼表示。X為正數(shù)時有:(X)原=(X)反=(X)補X為負數(shù)時有:(X)補=(X)反+1,((X)補)補=(X)原
((X)反)反=(X)原
補碼的求法1)根據(jù)定義求:(X)補=2n+X如X=-,n=8,則(X)補=28+(-)=100000000-=,有減法運算不方便。2)利用原碼求:一個負數(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ù)表示法一個二進制數(shù)N
可表示為:N
=±2±P×S(N,P,S均為二進制數(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在計算機中如何表示?在計算機中,負數(shù)以其正值的補碼形式表達。原碼:一個整數(shù),按照絕對值大小轉(zhuǎn)換成的二進制數(shù),稱為原碼。比如0000000000是5的原碼。反碼:將二進制數(shù)按位取反,所得的新二進制數(shù)稱為原二進制數(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在計算機中表達為:11111111111111111111111111111011。轉(zhuǎn)換為十六進制:0xFFFFFFFB(在c中)或0FFFFFFFBH(在匯編中)。BCD(BinaryCodeDecimal)碼:把每1位十進制數(shù)用4位二進制編碼表示的數(shù)字編碼。它的全名為十進制數(shù)的二進制編碼(二-十進制編碼)8421BCD碼:每個十進制位用4位二進制數(shù)表示,而4位二進制數(shù)的位權(quán)分別為8、4、2、1,故命名之。十進制數(shù)8421BCD碼十進制數(shù)8421BCD碼000008100010001910012001010000100003001111000100014010012000100105010113000100116011014000101007011115000101014.數(shù)字編碼8421BCD編碼表例:(36.97)10=(00110110.10010111)BCD(100100110001.01000101)BCD=(931.45)10BCD碼壓縮型BCD碼用4位二進制數(shù)表示1位十進制數(shù)非壓縮型BCD碼用8位二進制數(shù)表示1位十進制數(shù)1).ASCII編碼:是由美國國家標(biāo)準(zhǔn)委員會制定的一種包括數(shù)字、字母、通用符號在內(nèi)的字符編碼集。ASCII碼是一種7位二進制編碼,能表示27=128個國際上最通用的西文字符。5.字符型數(shù)據(jù)的表示ASCII編碼字符集包括4類常用的字符。(1)數(shù)字0~9對應(yīng)的ASCII碼值分別為0110001B~0111001B用十六進制數(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)碼。二進制的運算和計算機中的四則運算1.算術(shù)運算 算術(shù)運算是指利用+、-、×、÷、()等符號連接二進制數(shù)完成的運算。(自然運算規(guī)則與十進制同)
計算機中完成二進制的四則運算 完成二進制的四則運算最終都是進行加法運算。 加法:……;乘法:部分積右移加被乘數(shù)或0
減法:加補碼;除法:部分余數(shù)左移加除數(shù)補碼或01)二進制的加減運算兩個1位二進制數(shù)的加、減運算規(guī)則加法規(guī)則:減法規(guī)則:
0+0=00–0=00+1=11–1=1(借位1)
1+0=11–0=11+1=0(進位1)1–1=0多位二進制數(shù)加、減運算法則:逢二進一、借一作二例:求11000011B+100101B=?求11000011B-100101B=?
11000011B11000011B+100101B-100101B11101000B10011110B參見p.7二進制的補碼運算規(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)二進制的補碼運算
分析:兩數(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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 化學(xué)自主訓(xùn)練第二章化學(xué)反應(yīng)的速率和限度
- 語言文字運用(原卷版)-高一語文上學(xué)期期末分類匯編(統(tǒng)編版全國)
- 2025年廣東教師公需課新質(zhì)生產(chǎn)力與高質(zhì)量發(fā)展試題(附答案)
- 2025年關(guān)于護理不良事件試題及答案
- 2025年保安員(初級)模擬考試及答案
- 譯林版高考英語一輪復(fù)習(xí)講義:Unit1The written
- 絲織品在環(huán)保體育用品中的應(yīng)用考核試卷
- 化纖織造工藝改進研究考核試卷
- 廢棄衛(wèi)生材料分類標(biāo)準(zhǔn)更新動態(tài)考核試卷
- 事故處理法律責(zé)任賠償計算方法考核試卷
- 數(shù)字智慧方案5303丨華為智能礦山聯(lián)合解決方案
- 構(gòu)建強大金融機構(gòu):挑戰(zhàn)、國際經(jīng)驗與路徑
- 德勤:2025“十五五”時期中國能源行業(yè)關(guān)鍵議題報告
- 通信工程安全生產(chǎn)操作規(guī)范
- 煤礦資金計劃管理辦法
- 2025年廣東省中考數(shù)學(xué)試卷真題(含答案詳解)
- 2025年北京市高考語文試卷(含解析)
- 2025年全國公務(wù)員考試試題及答案詳解
- 職業(yè)衛(wèi)生宣傳培訓(xùn)檔案目錄
- 小學(xué)數(shù)學(xué)教學(xué)反思2000字
- vave價值管理制度
評論
0/150
提交評論