《計算機導(dǎo)論》PPT課件
《《計算機導(dǎo)論》PPT課件》由會員分享,可在線閱讀,更多相關(guān)《《計算機導(dǎo)論》PPT課件(58頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、內(nèi)容提要,2.1 概,2.3 數(shù)據(jù)在計算機中的表示,2.2 圖靈機,在第一臺電子計算機ENIAC誕生的10年前即1936年,英 國數(shù)學(xué)家圖靈發(fā)表了題為“論可計算數(shù)及其在判定問題中的 應(yīng)用”O(jiān)n Computer Numbers With an Application to the Entscheidungs Problem的學(xué)術(shù)論文,奠定了學(xué)術(shù)界公認(rèn)的 現(xiàn)代電子計算機的理論和模型基礎(chǔ)。 1、希爾伯特綱領(lǐng) 20世紀(jì)初,逐步形成了關(guān)于數(shù)學(xué)基礎(chǔ)研究的邏輯主義、 直覺主義和形式主義三大流派。其中,形式主義流派的代表 人物是數(shù)學(xué)家希爾伯特DHilbert。他在數(shù)學(xué)基礎(chǔ)的研 究中提出了一個設(shè)想,其大意
2、是:將每一門數(shù)學(xué)的分支形式 化,構(gòu)成形式系統(tǒng)或形式理論,并在以此為對象的元理論即,,元數(shù)學(xué)中,證明每一個形式系統(tǒng)的相容性,從而導(dǎo)出全部 數(shù)學(xué)的相容性,希爾伯特的這一設(shè)想, 就是所謂的“西爾伯特綱領(lǐng)”。 “西爾伯特綱領(lǐng)”的目標(biāo),其實質(zhì)就 是要尋找通用的形式邏輯系統(tǒng),該系 統(tǒng)應(yīng)當(dāng)是完備的,即在該系統(tǒng)中,可 以機械地判定任何給定命題的真?zhèn)巍?DHilbert 希爾伯特,,“西爾伯特綱領(lǐng)”的研究基礎(chǔ)是邏輯和代數(shù),主要源于19世紀(jì) 英國數(shù)學(xué)家喬治布爾GBoole所 創(chuàng)立的邏輯代數(shù)體系即布爾代數(shù)。 1854年,布爾在他的著作中成功地將 “真” 、“假”兩種邏輯值和“與”、“或”、 “非”3種邏輯運算歸結(jié)
3、為一種代數(shù)。這 樣,形式邏輯系統(tǒng)中的任何命題都可 用數(shù)學(xué)符號表示出來,并能按照一定 的規(guī)則推導(dǎo)出結(jié)論。盡管布爾沒有將 “布爾代數(shù)”與計算機聯(lián)系起來,但 他的工作卻為現(xiàn)代計算機的誕生作 了重要的理論準(zhǔn)備。,GBoole 喬治布爾,,希爾伯特的工作建立在布爾工作的基礎(chǔ)上,并使其進(jìn)一步具 體化。 希爾伯特對實現(xiàn)自己的綱領(lǐng)充滿信心。然而,1931年, 奧地利25歲的數(shù)理邏輯學(xué)家哥德爾KGdel提出的關(guān) 于形式系統(tǒng)的“不完備性定理”中指出,這種形式系統(tǒng)是不存 在的,從而宣告了著名的“西爾伯特綱領(lǐng)”的失敗。希爾伯特 綱領(lǐng)的失敗同時也暴露了形式系統(tǒng)的局限性,它表明形式系 統(tǒng)不能窮盡全部數(shù)學(xué)命題,任何形式系
4、統(tǒng)中都存在著該系統(tǒng) 所不能判定其真?zhèn)蔚拿}。,,“西爾伯特綱領(lǐng)”雖然失敗了,但它仍然不失為人類抽象 思維的一個偉大成果,它的歷史意義是多方面的。 首先,“西爾伯特綱領(lǐng)”是在保全古典數(shù)學(xué)的前提下去排 除集合論悖論的,它給數(shù)學(xué)基礎(chǔ)問題的研究帶來了全新的轉(zhuǎn) 機。其次,希爾伯特綱領(lǐng)的提出使元數(shù)學(xué)得到了確立和發(fā)展。 最后,對計算學(xué)科而言,最具意義的是,希爾伯特綱領(lǐng)的失 敗啟發(fā)人們應(yīng)避免花費大量的精力去證明那些不能判定的問 題,而應(yīng)把精力集中于解決具有能行性的問題。,,2、圖靈對計算本質(zhì)的揭示 在哥德爾研究成果的影響下20世紀(jì)30年代后期,圖靈 AMTuring從計算一個數(shù)的一般過程入手對計算的本
5、質(zhì)進(jìn)行了研究,從而實現(xiàn)了對計算本質(zhì)的真正認(rèn)識。 根據(jù)圖靈的研究,直觀地說,所謂計算就是計算者人 或機器對一條兩端可無限延長的紙帶上的一串0和1執(zhí)行指 令,一步一步地改變紙帶上的0或1,經(jīng)過有限步驟,最后得 到一個滿足預(yù)先規(guī)定的符號串的變換過程。圖靈用形式化方 法成功表述可計算這一過程的本質(zhì)。圖靈的研究成果是哥德 爾研究成果的進(jìn)一步深化,該成果不僅再次表明了某些數(shù)學(xué) 問題是不能用任何機械過程來解決的思想,而且還深刻揭示 可計算所具有的“能行過程”的本質(zhì)特征。,,圖靈的描述是關(guān)于數(shù)值計算的,不過,我們知道英文字 母表的字母以及漢字均可以用數(shù)來表示,因此,圖靈機同樣 可以處理非數(shù)值計算。不僅如此,
6、更為重要的是,由數(shù)值和 非數(shù)值英文字母、漢字等組成的字符串,既可以解釋成 數(shù)據(jù),又可以解釋成程序,從而計算的每一過程都可以用字 符串的形式進(jìn)行編碼,并存放在存儲器中,以后使用時譯碼, 并由處理器執(zhí)行,機器碼結(jié)果可以從高級符號形式即 程序設(shè)計語言機械地推導(dǎo)出來。 圖靈的研究成果是:可計算性圖靈可計算性。在進(jìn)行 可計算性問題的討論時,不可避免地要提到一個與計算具有 同等地位和意義的基本概念,那就是算法。算法也稱為能行,,方法或能行過程,是對解題計算過程的精確描述,它由 一組定義明確且能機械執(zhí)行的規(guī)則語句、指令等組成。 根據(jù)圖靈的論點,可以得到這樣的結(jié)論:任一過程是能行的 能夠具體表現(xiàn)在一個算法中
7、,當(dāng)且僅當(dāng)它能夠被一臺圖 靈機實現(xiàn)。 圖靈機等計算模型均是用來解決問題的,理論上的能行 性隱含著計算模型的正確性,而實際實現(xiàn)中的能行性還包 含時間與空間的有效性。,3、圖靈機,為紀(jì)念圖靈對計算機的貢獻(xiàn), 美國計算機博物館于1966年 設(shè)立了“圖靈獎”,計算機是使用相應(yīng)的程序來完成任何設(shè)定好的任務(wù)。,圖靈機是一種思想模型, 它由三部分組成: 一個控制器,一條可以無限延伸的 帶子和一個在帶子上左右移動的讀 寫頭。,,,根據(jù)圖靈的觀點可以得到這樣的結(jié)論:凡是能用算 法方法解決的問題,也一定能用圖靈機解決;凡是圖靈機 解決不了的問題,任何算法也解決不了。今天我們知道, 圖靈機與當(dāng)時提出的用于解決計
8、算問題的遞歸函數(shù)、演 算和POST規(guī)范系統(tǒng)等計算模型在計算能力上是等價的。它 們于20世紀(jì)30年代共同奠定了計算科學(xué)的理論基礎(chǔ)。相比 于其他幾種計算模型,圖靈機是從過程這一角度來刻畫計 算的本質(zhì),其結(jié)構(gòu)簡單,操作運行規(guī)則也較少,從而為更 多的人所理解。 圖靈機的特征 圖靈機由一條兩端可無限延長的帶子、一個讀寫頭以及一組控制讀寫頭工作的命令組成,如圖所示。圖靈機,,的帶子被劃分為一系列均勻的方格。讀寫頭可以沿帶子方向左 右移動,并可以在每個方格上進(jìn)行讀寫。 寫在帶子上的符號為一個有窮字母表: S0,S1,S2,,SP。 通常,可以認(rèn)為這個有窮字母表僅有兩個S0、S1字符,其中S0 可以看作是“
9、0”,S1可以看作是“1”,它們只是兩個符號,要說 有意義的話,也只有形式的意義。,,,由字符“0”和“1”組成的字母表可以表示任何一個數(shù)。 機器的控制狀態(tài)表為q1, q2,qm,。通常,將一個圖靈 機的初始狀態(tài)設(shè)為q1,在每一個具體的圖靈機中還要確定一 個結(jié)束狀態(tài)qw。 一個給定機器的“程序”認(rèn)為是機器內(nèi)的五 元組qiSjSkR或L或Nql形式的指令集,五元組定義了 機器在一個特定狀態(tài)下讀入一個特定字符時所采取的動作。 5個元素的含義如下: qi 表示機器目前所處的狀態(tài); Sj 表示機器從方格中讀入的符號; Sk 表示機器用來代替寫入方格中的符號; R、L、N 分別表示向右移一格、向左移一
10、格、不移動; ql 表示下一步機器的狀態(tài)。,,圖靈機的工作原理 機器從給定帶子上的某起始點出發(fā),其動作完全由其初始狀態(tài)及機內(nèi)五元組來決定。就某種意義而言,一個機器其實就是它作用于紙帶上的五元組集。一個機器計算的結(jié)果是從機器停止時帶子上的信息得到的。 4、馮諾依曼型計算機 1946年2月14日,世界上第一臺數(shù)字電子計算機ENIAC在美國賓夕法尼亞大學(xué)研制成功。該機是使用電子線路來執(zhí)行算術(shù)和邏輯運算以及信息存儲的真正工作的計算機器,它的成功研制顯示了電子線路的巨大優(yōu)越性。但是,ENIAC的結(jié)構(gòu)在很大程度上是依照機電系統(tǒng)設(shè)計的,還存在重大的線路結(jié)構(gòu)等問題。在圖靈等人工作的影響下,1946年6月,美
11、國杰出的數(shù)學(xué)家馮諾依曼及其同事完成了關(guān)于電子計算裝置邏輯結(jié)構(gòu)設(shè)計的研究報告,具體,,介紹了制造電子計算機和程序設(shè)計的新思想,給出了由控 制器、運算器、存儲器、輸入和輸出設(shè)備5類部件組成的, 被稱為馮諾依曼型計算機或存儲程序式計算機的組織 結(jié)構(gòu),以及實現(xiàn)它們的方法,為現(xiàn)代計算機的研制奠定了 基礎(chǔ),至盡為止,大多數(shù)計算機采用的仍然是馮諾依曼型 計算機的組織結(jié)構(gòu),只是作了一些改進(jìn)而已。因此,馮諾 依曼被人們譽為“計算機器之父”。,,馮諾依曼型計算機的組織結(jié)構(gòu),,,John von Neumann 馮諾依曼,1949 EDSAC,存儲程序工作原理 計算機的兩個基本能力:一是能夠存儲程序,二是能夠自動地
12、執(zhí)行程序。 計算機是利用“存儲器”(內(nèi)存)來存放所要執(zhí)行的程序的,而稱之為CPU的部件可以依次從存儲器中取出程序中的每一條指令,并加以分析和執(zhí)行,直至完成全部指令任務(wù)為止。,,香儂是現(xiàn)代信息論的著名創(chuàng)始人。1938年,香儂在發(fā)表的論文中, 首次用布爾代數(shù)進(jìn)行開關(guān)電路分析,并證明布爾代數(shù)的邏輯運算可 以通過繼電器電路來實現(xiàn)。 阿塔納索夫提出了計算機的三條原則: 1)以二進(jìn)制的邏輯基礎(chǔ)來實現(xiàn)數(shù)字運算,以保證 精度; 2)利用電子技術(shù)來實現(xiàn)控制、邏輯運算和算術(shù)運 算,以保證計算速度; 3)采用把計算功能和二進(jìn)制數(shù)更新存儲功能相分 離的結(jié)構(gòu)。,Claude Shannon,奠定現(xiàn)代計算機發(fā)展的重
13、要人物和思想,2.3 數(shù)據(jù)在計算機中的表示,計算機中的數(shù)據(jù)和指令都是用二進(jìn)制代碼表示的,這是因為計算機的各組成部分是僅具有兩個穩(wěn)定狀態(tài)的物理元件電子開關(guān)線路所組成。為此,要想深入學(xué)習(xí)計算機的各個部分,必須掌握二進(jìn)制代碼的有關(guān)知識。 計算機中用二進(jìn)制代碼表示數(shù)據(jù)信息有兩種方法: 按“值”表示:在選定的進(jìn)位制中正確地表示出數(shù)值,包括數(shù)字、符號、小數(shù)點位置及正負(fù)號等。如“9.5”可表示為二進(jìn)制的 “1001. 1”。 按“形”表示:按照一定的編碼方法來表示數(shù)據(jù)。如用ASCII碼表示“9.5”,其形式為0101101、0111001、0101110、0110101。,,1、進(jìn)位制數(shù)及其相互轉(zhuǎn)化 (一)
14、進(jìn)位制數(shù)(進(jìn)位計數(shù)制) 數(shù)制的定義:用一組固定的數(shù)字(數(shù)碼符號)和一套統(tǒng)一的 規(guī)則來表示數(shù)值的方法就叫做數(shù)制(number system也稱計數(shù) 制)。這一定義主要的內(nèi)涵是: (1) 數(shù)制的種類很多,除了十進(jìn)制數(shù),還有二十四進(jìn)制(24小 時為一天),六十進(jìn)制(60分為1小時,60秒為1分),二進(jìn)制(鞋、 襪、筷子等兩只為一雙),等等。 (2) 在一種數(shù)制中,只能使用一組固定的數(shù)字來表示數(shù)的大 小。數(shù)字在一個數(shù)中所處的位置稱為數(shù)位。具體使用多少個 數(shù)字來表示一個數(shù)值的大小,就稱為該數(shù)制的基數(shù)(base)。 例如,十進(jìn)制數(shù)(Decimal),,的基數(shù)是10,使用09十個數(shù)字,二進(jìn)制數(shù)(Binary
15、)的基數(shù)為 2,使用0,1兩個數(shù)字。在計算機文獻(xiàn)中,十進(jìn)制數(shù)是在數(shù) 的末尾加字母D來標(biāo)識。例如,1989D,表示十進(jìn)制數(shù)1989。 一般情況下,1989就是一個十進(jìn)制數(shù),不在后面加D。二進(jìn) 制數(shù)是在數(shù)的末尾加字母B來標(biāo)識。例如,101B,表示二進(jìn) 制數(shù)的101,即十進(jìn)制數(shù)的5。 (3) 在一種數(shù)制中,有一套統(tǒng)一的規(guī)則。N進(jìn)制的規(guī)則是逢N 進(jìn)1,或者借1為N。 權(quán) 或稱位權(quán),是指數(shù)位上的數(shù)字乘上一個固定的數(shù)值。十 制數(shù)是逢十進(jìn)一,所以對每一位數(shù)可以分別賦以位權(quán)100, 101,102,。 用這樣的位權(quán)就能夠表示十進(jìn)制的數(shù)。,,基數(shù) 某一基數(shù)中的最大數(shù)是“基數(shù)減1”,而不是基數(shù)本身,如 十進(jìn)制
16、數(shù)中的最大數(shù)為(101)9,二進(jìn)制數(shù)中的最大數(shù)為 (21)1;最小數(shù)均為0。 數(shù)位、基數(shù)和位權(quán)是進(jìn)位計數(shù)制中的三個要素。 采用二進(jìn)制記數(shù)法 原因目前,在計算機內(nèi)部,數(shù)據(jù)的計算和處理都采用二 進(jìn)制記數(shù)法,主要是由二進(jìn)制數(shù)在技術(shù)操作上的可行性、可 靠性、簡易性以及其邏輯性所決定的。 (1) 可行性若用十進(jìn)制數(shù),需要0,1,,9等不同的10個基 數(shù),用電子技術(shù)實現(xiàn)這10種狀態(tài)就很困難。而用二進(jìn)制數(shù), 則只需0,1兩個基數(shù),要表示兩個狀態(tài),這在電學(xué)技術(shù)上的,,實現(xiàn)最為容易。例如,電燈的亮和滅,晶體管的導(dǎo)通和截止, 等等。 (2) 可靠性因二進(jìn)制數(shù)只要兩個狀態(tài),數(shù)字轉(zhuǎn)移和處理就不 易出錯,這樣計
17、算機工作的可靠性就高。 (3) 簡易性二進(jìn)制數(shù)運算法則簡單。例如,二進(jìn)制的加法、 積法法則都只有三個。運算法則少,使計算機運算器結(jié)構(gòu)大 大簡化,控制也可隨之簡化。 (4) 邏輯性由于二進(jìn)制數(shù)只要0,1兩個數(shù)碼,可以代表邏輯 代數(shù)中的“假”和“真”,這就是在計算機中使用二進(jìn)制的邏輯 性。,,具體分析二進(jìn)制、十進(jìn)制、八進(jìn)制、十六進(jìn)制的性質(zhì): 十進(jìn)制D 具有十個數(shù)字符號0,1,2,3,,9; 逢十進(jìn)一; 基數(shù)為10,第i位的權(quán)為10i。 舉例:123.4510110221013100410-1 510-2 表示方法:123.4510123.45D 二進(jìn)制B 具有兩個數(shù)字符號0
18、,1; 逢二進(jìn)一; 基數(shù)為2,第i位的權(quán)為2i。,,舉例:101.101212202112012-102-2 12-3 表示方法:101.1012101.101B 八進(jìn)制Q 具有八個數(shù)字符號0,1,2,7; 逢八進(jìn)一; 基數(shù)為8,第i位的權(quán)為8i。 舉例:137.438 18238178048-1 38-2 表示方法:137.438137.43Q,,十六進(jìn)制H 具有十六個數(shù)字符號0,1,2,9,A,B,C,D,E,F(xiàn); 逢十六進(jìn)一; 基數(shù)為16,第i位的權(quán)為16i。 舉例: 147B. CD16116341627161 B160C16-1
19、D16-2 表示方法:147B.CD16147B.CDH 進(jìn)位制數(shù)的相互轉(zhuǎn)換 1、十進(jìn)制數(shù)與二進(jìn)制數(shù)間的相互轉(zhuǎn)換, D B,,,2710?2,例1:510?2,0 1,0 1,即5101012,2710110112,,,,,例2:0.62510?2,0.625, 2,,1.250 1, 2,,0.50 0, 2,,1.0 1,,即 0.625100.1012,,例3:27.6251011011.1012,口 訣:整數(shù)部分,除2取余數(shù),直到商為0。余數(shù)排列,由下到上;小數(shù)部分,乘2取整數(shù),直到小數(shù)部分為0或達(dá)到所求的精確度。整數(shù)排列,由上到下。,,將二進(jìn)制數(shù)
20、的各位按權(quán)展開相加。 例4:1012?10 1012122021120510 例5:11011.1012?10 11011.1012124123022121120 12-102-212 -3 270.50.125 27.62510, B D,,,2、十進(jìn)制與八進(jìn)制間的相互轉(zhuǎn)化 D Q 同與二進(jìn)制間的轉(zhuǎn)化類似,整數(shù)部分除以8,取余數(shù); 小數(shù)部分則乘以8,取整數(shù)。 此外,我們知道,八進(jìn)制的基數(shù)8正好是二進(jìn)制基數(shù) 的3次冪,即8123,故八進(jìn)制的一位相當(dāng)于二進(jìn)制的三位。因此在轉(zhuǎn)化時,也可以先將十進(jìn)制數(shù)轉(zhuǎn)化為二進(jìn)制數(shù),而后在進(jìn)一步轉(zhuǎn)化為八進(jìn)制數(shù)。 例
21、略 Q D 將八進(jìn)制數(shù)的各位按權(quán)展開相加。 例略,,,,八進(jìn)制與二進(jìn)制的關(guān)系,,3、十進(jìn)制數(shù)與十六進(jìn)制數(shù)間的相互轉(zhuǎn)化 D H 同與二進(jìn)制間的轉(zhuǎn)化類似,整數(shù)部分除以16,取余數(shù); 小數(shù)部分則乘以16,取整數(shù)。 十六進(jìn)制的基數(shù)16正好是二進(jìn)制基數(shù)的4次冪,即16124,故十六進(jìn)制的一位相當(dāng)于二進(jìn)制的四位。因此在轉(zhuǎn)化時,也可以先將十進(jìn)制數(shù)轉(zhuǎn)化為二進(jìn)制數(shù),而后在進(jìn)一步轉(zhuǎn)化為十六進(jìn)制數(shù)。 例略 H D 將十六進(jìn)制數(shù)的各位按權(quán)展開相加。 例略,,,,十六進(jìn)制與二進(jìn)制的關(guān)系,,2、數(shù)據(jù)的長度單位 數(shù)據(jù)的長度單位有位、字節(jié)和字等。 (1) 位 也稱比特,記為bit(binary digit的
22、縮寫)或小寫b,這是最小的 信息單位,是用0或1來表示的1個二進(jìn)制數(shù)位。 (2) 字節(jié) 記為Byte或大寫B(tài),這是計算機的最小存儲單元。PC機中由 8個二進(jìn)制位構(gòu)成一個字節(jié),從最小的00000000到最大的 11111111,即一個字節(jié)可有256個值。一個字節(jié)也可以表示 由8個二進(jìn)制位構(gòu)成的其它信息。一個字節(jié)可存放一個半角 英文字符的編碼( ASCII碼)。兩個字節(jié)可存放一個漢字編碼,,,1個漢字至少需要兩個字節(jié)或兩個字符來表示。這里所說的 字符是指ASCII碼字符,即半角下的英文字母、數(shù)字或其它 符號。,字節(jié)(Byte):最常用的基本單位,K (KiloBytes,千) 字節(jié)1K = 102
23、4 byte =210 M(MegaBytes,兆)字節(jié)1M = 1024 K =220 G(GigaBytes,吉)字節(jié)1G = 1024 M =230 T(TeraBytes,太)字節(jié)1T = 1024 G =240 P(PetaBytes,拍)字節(jié)1T = 1024 G =250,,(3)字 記為word或小寫w,是計算機信息交換、加工、存儲的基本 單元。用二進(jìn)制代碼表示,一個字由一個字節(jié)或若干字節(jié) 構(gòu)成。它可以代表數(shù)據(jù)代碼、字符代碼、 操作碼和地址碼 或它們的組合。計算機的“字”用來表示數(shù)據(jù)或信息長度。 3、數(shù)值的表示 機器數(shù) 在計算機中,因為只有“0” 和“1”兩種形式,為了表示數(shù)
24、的正、負(fù)號,也必須以“0” 和“1”表示。通常把一個數(shù)的最 高位定義為符號位,用0表示正,1表示負(fù),稱為數(shù)符;其 余位仍表示數(shù)值。通常,把在機器內(nèi)存放的正負(fù)號數(shù)碼化 的數(shù)成為機器數(shù),把機器外部由正負(fù)表示的數(shù)稱為真值數(shù)。,,例如,若一個數(shù)占8位,真值數(shù)0101100B的機器數(shù) 為10101100,存放在機器中如圖示。 機器數(shù)表示的范圍受到字長和數(shù)據(jù)類型的限制。字長和數(shù)據(jù)類型確定了,機器數(shù)表示的范圍也定了。 整數(shù)和實數(shù) 在機器中,難以表示小數(shù)點,故在機器中通過對小數(shù)點的位置加以規(guī)定來表示。因此,就有整數(shù)和實數(shù)區(qū)分。,數(shù)符,,1、整數(shù) 整數(shù)是沒有小數(shù)部分的數(shù),也可以認(rèn)為小數(shù)點在數(shù)的 最右邊。
25、整數(shù)分為帶符號和不帶符號兩類。對帶符號的整 數(shù),符號位被放在最高位。整數(shù)表示的數(shù)是精確的,但數(shù)的范圍是有限的。根據(jù)存放數(shù)的字長,它們可以用8、16、32位等表示,各自表示數(shù)的范圍見下表。,不同位數(shù)和數(shù)的表示范圍,,2、實數(shù) 計算機處理的數(shù)值大部分是實數(shù),即帶有小數(shù)部分 的數(shù),尤其是在科學(xué)計算中。通常,為了能表示特大或 特小的數(shù),實數(shù)采用“浮點數(shù)”或稱“科學(xué)表示法”表示, “浮點數(shù)”由兩部分組成,即尾數(shù)和階碼。 任意二進(jìn)制規(guī)格化浮點數(shù)的表示形式為: Nd2 p,式中:d是尾數(shù),前面的“”表示數(shù)符;p是階碼,前面的“”表示階符。它在計算機內(nèi)的存儲形式如圖示:,浮點數(shù)存儲格式,,階碼通常用整數(shù)
26、形式來表示,它指出的是小數(shù)點在 數(shù)據(jù)中的位置,決定了浮點數(shù)的表示范圍;尾數(shù)通常用 小數(shù)形式表示,給出了有效數(shù)字的位數(shù),決定了浮點數(shù) 的表示精度。所謂規(guī)格化的浮點數(shù)就是指尾數(shù)需滿足條 件:S1。 二進(jìn)制的原碼、反碼及補碼表示 按值表示數(shù)需解決的一個問題是如何表示數(shù)的正負(fù) 號。在計算機中,數(shù)的正負(fù)號是用“0”、“1”表示的。機器 數(shù)在計算機時,若將符號同時和數(shù)值參加運算,則會產(chǎn)生 錯誤的結(jié)果;否則要考慮計算機結(jié)果的符號問題,將增加 計算機實現(xiàn)的難度。例如,54的結(jié)果應(yīng)為1,但在,,計算機中若按照上面講的符號和數(shù)值同時參加運算,結(jié)果 為9,顯然是錯誤的。 若要考慮符號位的處理,則運算變得復(fù)雜。為了
27、解決 此類問題,在機器數(shù)中,數(shù)有三種表示法:原碼 primary code、反碼ones complement和補碼tows complement。 設(shè)計算機的字長為n位,它可表示的真值 xxn-2xn-3x0,其中xi0或1二進(jìn)制數(shù),則有:1、真值x xn-2xn-3x0時,原碼、反碼和補碼完全 相同,即x原x反x補0 xn-2xn-3x0,,2、真值x xn-2xn-3x0 時,原碼、反碼和補碼與 x的關(guān)系如下: x原1 xn-2 xn-3x0 x反1 x補1 ( +1) 從而可知,在n位的機器數(shù)中,最高位為符號位,若 該位為0真值為正,該位為1則真值為負(fù);其余的 n1位為數(shù)值
28、位,其取值為0或1。當(dāng)真值為正時, 原碼、反碼和補碼的數(shù)值位完全相同;當(dāng)真值為負(fù)時, 原碼的數(shù)值位保持真值的原樣,反碼的數(shù)值位為原碼的 各位取反,補碼則是反碼的最低位加1。根據(jù)以上關(guān)系, 很容易實現(xiàn)真值與機器數(shù)之間及三種機器數(shù)之間的相互。,,轉(zhuǎn)換。 例1:已知計算機字長為8位,試寫出二進(jìn)制數(shù)101010和 101010在機器中表示的原碼、反碼及補碼。 首先寫出它們的真值。設(shè)該機器采用定點整數(shù)表示, 則真值形式如下: x0101010 y0101010 真值x為正,故有 x原 x反 x x補00101010 真值y為負(fù),有 x原10101010 x反11010101 x補110101
29、10,,例2:已知101101,求真值x。 分析:最高位為符號位,先由x補求出x反 x反1011011101100 x補110011 從而有 y10011 運算基礎(chǔ) 計算機中的運算有兩類,一是算術(shù)運算,另一類是 邏輯運算。算術(shù)運算包括加、減、乘、除等四則運算。 邏輯運算 常用的邏輯運算有邏輯乘“與”運算、邏輯加 “或”運算、邏輯非“非”運算等運算,它們都是按位進(jìn)行運算的,也稱邏輯操作。,,“與”運算, “與”AND運算的規(guī)則如下: 000 010 100 111 式中,“”是“與”的運算符號,也可以用“”代替。 “與”運算的一般式為 CAB 或 CABAB “或”運算, “或”O(jiān)R
30、運算的規(guī)則如下: 000 011 101 111 式中,“”是“或”的運算符號,也可以用“”代替。 “或”運算的一般式為 CAB 或 CAB,,“非”運算 “非”NOT運算的規(guī)則如下: 1 0 式中,“”是“非”的運算符號。 “非”運算的一般式為C “異或”運算 “異或”EOR:Exclusive OR運算的規(guī)則如下: 式中,“ ”是“異或”的運算符號。,0,0,1,=1,1,0,=1,1,1,=0,B,,2、算術(shù)運算 二進(jìn)制的四則運算按位進(jìn)行運算,例2:1110-0011?,例4:1000001 101?,例1:10011000?,例3:11011001?,,補碼加減運算 補碼加法 設(shè)x,
31、y為正或負(fù)整數(shù)的真值,則由補碼的定 x補 y補 x+y補 應(yīng)用這一公式很容易實現(xiàn)補碼的加法運算。 例1:設(shè)x0110110,y1111001。 求xy? 解:在計算機中,真值x,y表示下列補碼形式 x補0,0110110 y補1,0000111 根據(jù)式,有 x+y補x補y補1,0111101 求得 xy1000011 結(jié)果正確,,例2:設(shè)x1010011,y0100101。求xy? 解: x補0,1010011 y補0,0100101 根據(jù)式,有 x+y補x補y補0,1111000 求得 xy1111000 結(jié)果正確 例3:設(shè)x1000011,y0100001。 求xy?,即
32、x補y補x+y補1,0011100 求得 xy1100100 結(jié)果正確,該例中,因機器字長假定為8位,故x補y補 的結(jié)果中最高位“1”無法保存,自動丟失,計算機中的實結(jié)果為1,0011100。,,例4:設(shè)x1000101,y1100111。 求xy? 解: x補0,1000101 y補0,1100111 x補 y補1,0101100 即 x+y補x補y補1,0101100 求得 xy1010100 顯然,該結(jié)果是錯誤的,因為兩個正數(shù)想加,其和 不可能為負(fù)數(shù)。分析如下: 真值x和y所表示的十進(jìn)制數(shù)分別為6910和 10310,其和為17210。該十進(jìn)制數(shù)所對應(yīng)的 二進(jìn)制數(shù)為1010
33、1100,需用9位字長的機器數(shù)表示, 現(xiàn)機器只有8位字長,無法表示,稱這種現(xiàn)象為“溢出 overflow”。,,在計算機中,一旦發(fā)生溢出,其運算結(jié)果肯定是錯誤的,機器將進(jìn)行溢出處理。 補碼減法 設(shè)x,y為正或負(fù)整數(shù)的真值,則可利用下列補碼關(guān)系求得xy之值。 x-y補x+(-y)補x補-y補 例如,設(shè)x1010101,y1100001。 求xy? x補0,1010101 y-1100001 -y補1,0011111 故得 x-y補 x+(-y)補1,1110100 xy0001100,,字符的表示 字符包括西文字符和中文字符。字符編碼的方法和簡 單,首先確定需要編碼的字符總數(shù)
34、,然后將每一個字符 按順序編號,編號值的大小無意義,僅作為識別與使用 這些字符的依據(jù)。 1、西文字符 對西文字符編碼最常用的是ASCII字符編碼,即 American Standard Code for Information Interchange美國信息交換標(biāo)準(zhǔn)代碼。ASCII是用7為 二進(jìn)制編碼,它可以表示2即128個字符。每個字符用7位 二進(jìn)制碼表示,其排列次序為d6d5dd3d2d1d0,d6為高位, d0為低位。,,在ASCII碼表中,十進(jìn)制碼值032和127NULSP 和DEL共34個字符稱為非圖形字符又稱為控制字符 其余94個字符稱為圖形字符又稱為普通字符。在這些 字符中,從
35、“0” “9”、從“A” “Z”、從“a” “z”都是順 序排列的,且小寫比大寫字母碼值大32,即位值d5為0或1, 這有利于大、小寫字母之間的編碼轉(zhuǎn)換。 計算機的內(nèi)部存儲與操作常以字節(jié)為單位,即8個二 進(jìn)制位為單位。因此,一個字符在計算機內(nèi)實際是用8位 表示。正常情況下,最高位d7為“0”。在需要奇偶校驗時, 這一位可用于存放奇偶校驗的值,此時稱這一位為校驗位。,,西文字符除了常用的ASCII編碼外,還有另一種 EBCDIC碼。這種字符編碼主要用在大型機器中。EBCDIC 代碼,即Extended Binary Coded Decimal Interchange Code擴展的二十進(jìn)制交換
36、碼。EBCDIC碼采用8位二 進(jìn)制碼表示,有256個編碼狀態(tài),但只選用其中一部分。 1、漢字編碼 英文是拼音文字,采用不超過128種字符的字符集 就滿足英文處理的需要,編碼容易,而且在一個計算機 系統(tǒng)中,輸入、內(nèi)部處理和存儲都可以使用同一編碼 一般為ASCII碼。漢字是象形文字,種類繁多,編碼比 較困難,而且在一個漢字處理系統(tǒng)中,輸入、內(nèi)部處理、 輸出對漢字編碼的要求不盡相同。因此進(jìn)行一系列的漢,,字編碼轉(zhuǎn)換,用戶用輸入碼輸入漢字,系統(tǒng)由輸入碼找 到相應(yīng)的內(nèi)碼,內(nèi)碼是計算機內(nèi)部對漢字的表示,要在顯 示器上顯示或在打印機上打印出用戶所輸入的漢字,需要 漢字的字形碼,系統(tǒng)由內(nèi)碼找到相應(yīng)的字形碼。
37、 全稱是GB231280信息交換用漢字編碼字符集基 本集,1980年發(fā)布,是中文信息處理的國家標(biāo)準(zhǔn),也稱 漢字交換碼,簡稱GB碼。一個國標(biāo)碼占兩個字節(jié),每個字 節(jié)最高位仍為“0”;英文字符的機內(nèi)碼是7位ASCII碼,最高位也是“0”。因為西文字符和漢字都是字符,為了在計 算機內(nèi)部能夠區(qū)分是漢字編碼還是ASCII碼,將國標(biāo)碼的 每個字節(jié)的最高位由“0”變?yōu)椤?”,變換后的國標(biāo)碼稱為漢 字機內(nèi)碼。由此可知漢字機內(nèi)碼的每個字節(jié)都大于128,,,而每個西文字符的ASCII碼值均小于128。漢字輸入碼是一 種用計算機標(biāo)準(zhǔn)鍵盤上按鍵的不同排列組合來對漢字的輸 入設(shè)計的編碼,目的是進(jìn)行漢字的輸入,那么對于
38、輸入碼, 要求編碼要盡可能的短,從而輸入時擊鍵的次數(shù)就比較少; 另外重碼要盡量少,這樣輸入時就可以基本上實現(xiàn)盲打; 再者,輸入編碼還要容易學(xué)容易上手,以便推廣。為了漢 字的輸出顯示和打印,需要描述漢字的字形,即對漢字的 字形進(jìn)行編碼,稱為漢字的字形碼,也稱為漢字字模。漢 字字形碼通常有兩種表示方式:點陣方式和矢量方式。用 點陣表示字形時,漢字字形碼指的就是這個漢字字形點陣 的代碼。點陣規(guī)模越大,字形就越美觀,同時其編碼也就 越長,所需的存儲空間也就越大。矢量表示方式存儲的是,,描述漢字字形的輪廓特征,當(dāng)要輸出漢字時,通過計算機 的計算,由漢字字形描述生成所需要大小和形狀的漢字點 陣。二者的區(qū)別在于:前者編碼、存儲方式簡單、無需轉(zhuǎn) 換直接輸出,但字形放大后產(chǎn)生效果差,而且同一種字體 不同的點陣需要不同的字庫。矢量方式特點正好與前者相 反。,
- 溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。