中南大學(xué)c語言陳老師市公開課金獎市賽課一等獎?wù)n件_第1頁
中南大學(xué)c語言陳老師市公開課金獎市賽課一等獎?wù)n件_第2頁
中南大學(xué)c語言陳老師市公開課金獎市賽課一等獎?wù)n件_第3頁
中南大學(xué)c語言陳老師市公開課金獎市賽課一等獎?wù)n件_第4頁
中南大學(xué)c語言陳老師市公開課金獎市賽課一等獎?wù)n件_第5頁
已閱讀5頁,還剩60頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

計算機與程序設(shè)計語言基礎(chǔ)任課教師:陳曉方課時:40課時試驗課時:16課時考試形式:閉卷考評成績:平時30%,期末考試70%

第1頁參考教材: 唐朔飛編著,《計算機組成原理(第二版)》高等教育出版社,,1; 李麗娟等編著,《C語言程序設(shè)計(第二版)》中國鐵道出版社,.8; 李麗娟等編著,《C語言程序設(shè)計試驗教程(第二版)》中國鐵道出版社,.8; 譚浩強著,《C程序設(shè)計(第二版)》,清華大學(xué)出版社,.3; 譚浩強著,《C語言設(shè)計題解與上機指導(dǎo)》,清華大學(xué)出版社,.3;第2頁第一章計算機組成原理及其數(shù)值與編碼電子計算機人類社會最重大科學(xué)創(chuàng)造之一推進社會邁向當(dāng)代化最活躍原因計算機科學(xué)與技術(shù)成為二戰(zhàn)以來發(fā)展最快、影響最為深遠新興學(xué)科之一已經(jīng)在世界范圍內(nèi)發(fā)展成為一個極富生命力產(chǎn)業(yè)當(dāng)前,計算機已經(jīng)被廣泛地應(yīng)用于國防、科教、衛(wèi)生、工農(nóng)業(yè)生產(chǎn)、生活各個領(lǐng)域,使人類邁入了信息化時代?!裁词怯嬎銠C?計算機是電子數(shù)字計算機簡稱,是一個自動地、高速地進行數(shù)值運算和信息處理電子設(shè)備,是一個按程序自動進行信息處理通信工具。第3頁1.1計算機軟硬件組成1.2計算機工作原理1.3計算機中數(shù)制及其轉(zhuǎn)換1.4計算機中數(shù)字字符等編碼第一章計算機組成原理及其數(shù)制與編碼第4頁1.1.1計算機發(fā)展簡史

在當(dāng)代計算機問世之前,計算機發(fā)展經(jīng)歷了三個階段。機械計算機機電計算機萌芽期電子計算機1.1計算機軟硬件組成第5頁1.機械計算機

從17世紀(jì)到19世紀(jì)中期長達200多年時間里,一批出色科學(xué)家相繼進行了機械計算機研制,其中代表人物有帕斯卡(BlaisePascal)、萊布尼茨(GottfriedLeibniz)和巴貝奇(CharlesBabbage)。計算機發(fā)展簡史第6頁

1642年,法國數(shù)學(xué)家帕斯卡采取與鐘表類似齒輪傳動裝置,制成了最早十進制加法機。

德國著名數(shù)學(xué)家萊布尼茲于1673年創(chuàng)造了乘法機,這是第一臺能夠運行完整四則運算計算機。計算機發(fā)展簡史1642BlaisePascal加法器萊布尼茲和他乘法機第7頁

英國數(shù)學(xué)家巴貝奇在1822年創(chuàng)造差分機,專門用于航海和天文計算。這是最早采取存放器(齒輪式裝置)來存放數(shù)據(jù)計算機,表達了早期程序設(shè)計思想萌芽。1833年,巴貝奇設(shè)計了一個程序控制通用分析機。計算機發(fā)展簡史1822差分機1833分析機CharlesBabbage第8頁

2.從機電計算機到萌芽期電子計算機計算機發(fā)展簡史MARKI1938年,德國科學(xué)家祖思(KonradZuse)制造出一臺純機械結(jié)構(gòu)Z-1計算機,這是第一臺采取二進制計算機。

1944年,美國科學(xué)家艾肯(HowardAiken)在IBM企業(yè)(InternationalBusinessMachine)支持下,研制成功機電計算機MARK-Ⅰ。第9頁

3.電子計算機誕生

為了處理彈道曲線計算問題,1943年在美國陸軍部主持下,美國賓夕法尼亞大學(xué)莫爾電工系JohnMauchly和PresperEckert博士開始研制人類歷史上第一臺通用數(shù)字電子計算機。1946年2月15日,在美國賓夕法尼亞大學(xué)莫爾學(xué)院舉行了開幕儀式。這臺機器名為“電子數(shù)字積分計算機”(ElectronicNumericalIntegratorandCalculator,ENIAC)計算機發(fā)展簡史電子計算機時代第10頁第一臺電子計算機(ENIAC)5000次加法/秒體重28噸占地170m218800只電子管1500個繼電器功率150KWENIAC是世界上第一臺真正意義上通用電子數(shù)字計算機。它問世,標(biāo)志著人類計算工具發(fā)生了歷史性變革,人類從此進入了電子計算機新時代。第11頁

4.計算機體系結(jié)構(gòu)形成

1834年巴貝奇設(shè)計分析機就有了今天計算機雛形。馮·諾伊曼提出了存放程序通用電子計算機方案——電子離散變量自動計算機(ElectronicDiscreteVariableAutomaticComputer,EDVAC)方案?!嬎銠C系列產(chǎn)品很多,其外形、性能指標(biāo)及功效強弱差異也很大,但基本工作原理都遵照科學(xué)家馮·諾依曼早年提出“存放程序、次序執(zhí)行指令”原理,即所謂馮·諾依曼原理。計算機結(jié)構(gòu)基本組成是依據(jù)該原理設(shè)計,所以計算機也稱為馮.諾依曼型計算機。

計算機發(fā)展簡史第12頁1.1.2馮·諾依曼體系結(jié)構(gòu)存放程序工作原理計算機兩個基本能力:一是能夠存放程序,二是能夠自動地執(zhí)行程序。計算機是利用“存放器”(內(nèi)存)來存放所要執(zhí)行程序,而稱之為CPU部件能夠依次從存放器中取出程序中每一條指令,并加以分析和執(zhí)行,直至完成全部指令任務(wù)為止。JohnvonNeumann當(dāng)代計算機之父馮諾依曼1949EDSAC(劍橋大學(xué)M.Wilkes教授)

第13頁馮諾依曼體系結(jié)構(gòu):把需要程序和數(shù)據(jù)送至計算機中。必須含有長久記憶程序、數(shù)據(jù)、中間結(jié)果及最終運算結(jié)果能力。能夠完成各種算術(shù)、邏輯運算和數(shù)據(jù)傳送等數(shù)據(jù)加工處理能力。能夠依據(jù)需要控制程序走向,并能依據(jù)指令控制機器各部件協(xié)調(diào)操作。能夠按照要求將處理結(jié)果輸出給用戶。

馮·諾依曼計算機輸入設(shè)備運算器存放器控制器輸出設(shè)備輸入數(shù)據(jù)和程序記憶程序和數(shù)據(jù)完成數(shù)據(jù)加工處理控制程序執(zhí)行輸出處理結(jié)果第14頁(外)存放器(內(nèi))存放器中央處理器(CPU)控制器輸入設(shè)備輸出設(shè)備數(shù)據(jù)流地址控制流運算器1.1.3計算機硬件基本組成第15頁1.輸入設(shè)備和輸出設(shè)備

什么是輸入輸出?計算機中輸入輸出是以計算機主機為主體而言。從外部設(shè)備將信息(包含原始數(shù)據(jù)、程序等)傳送到計算機內(nèi)存放器稱為輸入,從計算機內(nèi)部向外部設(shè)備傳送信息稱為輸出。

輸入設(shè)備接收用戶提交給計算機程序、數(shù)據(jù)及其它各種信息,并把它們轉(zhuǎn)換成計算機能夠識別二進制代碼,送給內(nèi)存放器。2.存放器

存放器是用于存放原始數(shù)據(jù)、程序以及計算機運算結(jié)果部件。存放器是由大量基本存放元件組成,每一個基本存放元件存放一位二進制數(shù)據(jù)“0”或“1”。1.1.3計算機硬件基本組成第16頁

內(nèi)存放器用來存放當(dāng)前需要處理原始數(shù)據(jù)及需要運行程序,CPU可直接訪問。微型計算機內(nèi)存普遍采取了大容量半導(dǎo)體存放器,依據(jù)使用功效不一樣,半導(dǎo)體存放器可分為隨機存取存放器(RandomAccessMemory,RAM)和只讀存放器(ReadOnlyMemory,ROM)兩種。RAM特點是:用戶既能夠從中讀出信息,又能夠?qū)⑿畔懭肫渲?;斷電后RAM中所存放信息將全部丟失。ROM特點是:用戶只能從中讀出信息,不能將信息寫入其中;斷電以后,ROM中所存放信息不會丟失。

外存放器用來存放當(dāng)前暫不需要處理原始數(shù)據(jù)及不需要運行程序,不能被CPU直接訪問,外存放器數(shù)據(jù)只有先調(diào)入內(nèi)存才能被CPU訪問。常見外存主要有軟盤、硬盤和光盤(CompactDiskReadOnlyMemory,CD-ROM),它們都必須經(jīng)過各自驅(qū)動器才能進行讀寫操作。第17頁3.控制器

控制器是整個計算機控制中心,它按照從內(nèi)存儲器中取出指令,向其他部件發(fā)出控制信號,使計算機各部件協(xié)調(diào)一致地工作,其次它又不停地接收由各部件傳來反饋信息,并分析這些信息,決定下一步操作,如此反復(fù),直到程序運行結(jié)束。4.運算器

運算器又稱算術(shù)邏輯單元(ArithmeticLogicUnit,ALU)。它接收由內(nèi)存送到二進制數(shù)據(jù)并對其進行算術(shù)運算和邏輯運算。第18頁1.1.4計算機系統(tǒng)組成計算機軟件

普通來說,軟件是計算機程序以及與程序相關(guān)各種文檔總稱。按軟件功效來分,軟件可分為系統(tǒng)軟件和應(yīng)用軟件兩大類。系統(tǒng)軟件又可分為操作系統(tǒng)、語言處理程序、數(shù)據(jù)庫管理系統(tǒng)和支撐軟件等。

1.系統(tǒng)軟件

系統(tǒng)軟件是在硬件基礎(chǔ)上對硬件功效擴充與完善,其功效主要是控制和管理計算機硬件資源、軟件資源和數(shù)據(jù)資源,提升計算機使用效率,發(fā)揮和擴大計算機功效,為用戶使用計算機系統(tǒng)提供方便。第19頁①操作系統(tǒng)

操作系統(tǒng)(OperatingSystem,OS)是為了控制和管理計算機各種資源,以充分發(fā)揮計算機系統(tǒng)工作效率和方便用戶使用計算機而配置一個系統(tǒng)軟件。操作系統(tǒng)是直接運行在計算機上最基本系統(tǒng)軟件,是系統(tǒng)軟件關(guān)鍵,任何計算機都必須配置操作系統(tǒng)。

操作系統(tǒng)是管理和控制計算機系統(tǒng)軟件、硬件和系統(tǒng)資源大型程序,是用戶和計算機之間接口。操作系統(tǒng)主要作用是提升系統(tǒng)資源利用率,為用戶提供方便友好用戶界面和軟件開發(fā)與運行環(huán)境。第20頁②語言處理程序

程序設(shè)計語言是人們?yōu)榱嗣枋鼋忸}步驟(即編程序)而設(shè)計一個含有語法語義描述記號。按其發(fā)展分為機器語言、匯編語言和高級語言。

③數(shù)據(jù)庫管理系統(tǒng)(DatabaseManagementSystem,DBMS)

數(shù)據(jù)庫管理系統(tǒng)(DatabaseManagementSystem,DBMS)是指提供各種數(shù)據(jù)管理服務(wù)計算機軟件系統(tǒng),這種服務(wù)包含數(shù)據(jù)對象定義、數(shù)據(jù)存放與備份、數(shù)據(jù)訪問與更新、數(shù)據(jù)統(tǒng)計與分析、數(shù)據(jù)安全保護、數(shù)據(jù)庫運行管理以及數(shù)據(jù)庫建立和維護等。④支撐軟件

支撐軟件是用于支持軟件開發(fā)、調(diào)試和維護軟件,可幫助程序員快速、準(zhǔn)確、有效地進行軟件研發(fā)、管理和評測第21頁2.應(yīng)用軟件

應(yīng)用軟件是為滿足用戶不一樣領(lǐng)域、不一樣問題應(yīng)用要求而開發(fā)軟件。應(yīng)用軟件能夠拓寬計算機系統(tǒng)應(yīng)用領(lǐng)域,擴大硬件功效,又能夠依據(jù)應(yīng)用不一樣領(lǐng)域和不一樣功效劃分為若干子類,比如,財務(wù)軟件、辦公軟件、計算機輔助設(shè)計(CAD)軟件等。1.1.4計算機系統(tǒng)組成第22頁單用戶操作系統(tǒng)多用戶操作系統(tǒng)網(wǎng)絡(luò)戶操作系統(tǒng)……操作系統(tǒng)匯編程序解釋程序編譯程序語言處理程序數(shù)據(jù)庫管理系統(tǒng)診療與維護程序調(diào)試程序……服務(wù)程序系統(tǒng)軟件軟件包用戶程序應(yīng)用軟件軟件第23頁3計算機系統(tǒng)

計算機是一個系統(tǒng),包含硬件系統(tǒng)和軟件系統(tǒng)兩大部分。計算機硬件是看得見、摸得著物體,是組成計算機系統(tǒng)各部件總稱。一臺計算機之所以能夠處理各種問題,含有很大通用性,能夠代替人們進行一定腦力勞動,是因為人們把要處理這些問題方法,分解成為計算機能夠識別和執(zhí)行步驟,并以計算機能夠識別形式存放到了計算機中。也就是說,在計算機中存放了處理這些問題程序。計算機軟件就是計算機程序及其相關(guān)文檔。1.1.4計算機系統(tǒng)組成第24頁計算機系統(tǒng)組成第25頁1.2計算機基本工作原理

1.指令和程序

——指令是對計算機進行程序控制最小單位。

通常一條指令對應(yīng)著一個基本操作。一個計算機能執(zhí)行什么樣指令,有多少條指令,這是由設(shè)計人員在設(shè)計計算機時決定?!恐噶罴戏Q為計算機指令系統(tǒng)(InstructionSet)

。

——程序是為完成一項特定任務(wù)而用某種語言編寫一組指令序列。機器指令格式操作碼操作數(shù)機器執(zhí)行什么操作執(zhí)行對象(詳細(xì)數(shù)、存放位置)PC+1第26頁1.2計算機基本工作原理2.計算機工作原理

按照馮·諾依曼存放程序思想,利用計算機解題首先要把指揮計算機怎樣進行操作指令序列(即程序)和原始數(shù)據(jù)經(jīng)過輸入設(shè)備輸送到計算機內(nèi)存放器中,計算機運行時,依次從內(nèi)存中取出一條條指令,控制器對指令進行分析判斷,按照指令要求,發(fā)出不一樣控制信號,在控制器指揮下完成要求操作,直到完成全部操作為止。所以,計算機工作原理能夠概括為存放程序和程序控制。第27頁1.3計算機中數(shù)制在計算機內(nèi)部,數(shù)據(jù)存放和處理都是采取二進制數(shù),主要原因是:

(1)二進制數(shù)在物理上最輕易實現(xiàn)。

(2)二進制數(shù)運算規(guī)則簡單。

(3)二進制數(shù)兩個數(shù)字符號“1”和“0”恰好與邏輯命題兩個值“真”和“假”相對應(yīng),為計算機實現(xiàn)邏輯運算和程序中邏輯判斷提供了便利條件。

但二進制數(shù)書寫冗長、易錯、難記,所認(rèn)為書寫方便,普通用十六進制數(shù)或八進制數(shù)作為二進制數(shù)簡化表示。第28頁1.3計算機中數(shù)制1.進位計數(shù)制

按進位標(biāo)準(zhǔn)進行計數(shù)方法稱為進位計數(shù)制。在采取進位計數(shù)數(shù)字系統(tǒng)中,假如用r個基本符號(比如0,1,2,…,r-1)表示數(shù)值,則稱其為基r數(shù)制(Radix-rNumberSystem),r成為該數(shù)制基數(shù)(Radix),而數(shù)制中每一數(shù)字位置上對應(yīng)固定值稱為權(quán)值(WeightValue)。對于不一樣數(shù)制,它們共同特點是:

(1)每一個數(shù)制都有固定符號集。

(2)每一個數(shù)字符號在不一樣位置上含有不一樣值第29頁任意r進制數(shù)N可表示為:

di為該數(shù)制采取基本數(shù)符,r為基數(shù),ri是數(shù)位權(quán)值,m為整數(shù)部分位數(shù),k為小數(shù)部分位數(shù)。例:(523.64)8=5*82+2*81+3*80+6*8-1+4*8-2(321.9)10=3*102+2*101+1*100+9*10-1第30頁“位”和“基數(shù)”是進位計數(shù)值中兩個要素。十進制:逢十進一二進制:逢二進一r進制:逢r進一計算機中慣用進位計數(shù)制:二進制(Binarysystem)、十進制(Decimalsystem)、八進制(Octalsystem)和十六進制(Hexadecimalsystem)。表示方法為:(95.8)10或(95.8)D,(1011.01)2或(1011.01)B第31頁2.任意r進制數(shù)轉(zhuǎn)換為十進制數(shù)

將r進制數(shù)按權(quán)展開后,再求和,所得結(jié)果即為這個r進制數(shù)所對應(yīng)十進制數(shù)。例:(11011.11)2=1×24+1×23+0×22+1×21+1×20+1×2-1+1×2-2=(27.75)10(317.2)8=3×82+1×81+7×80+2×8-1=(207.25)10

(3C5.4)16=3×162+12×161+5×160+4×16-1

=(965.25)10第32頁3.十進制數(shù)轉(zhuǎn)換為任意r進制數(shù)

將十進制數(shù)轉(zhuǎn)換成r進制數(shù)時,要將數(shù)整數(shù)部分和小數(shù)部分分別進行轉(zhuǎn)換,分別按除r取余數(shù)和乘r取整數(shù)兩種不一樣方法來完成。

以十進制數(shù)轉(zhuǎn)換成二進制數(shù)為例,對整數(shù)部分,用2去除,取其余數(shù)為轉(zhuǎn)換后二進制整數(shù)數(shù)字,直到商為0結(jié)束,且注意先得到余數(shù)為所求結(jié)果低位;對小數(shù)部分,用2去乘,取乘積整數(shù)部分為轉(zhuǎn)換后二進制小數(shù)數(shù)字,注意先得到整數(shù)為二進制小數(shù)高位。第33頁例:十進制57.875轉(zhuǎn)換為二進制?余數(shù)2│57……………1(低位)2│28……………02│14……………02│7……………12│3……………12│1……………1(高位)0所以(57)10=(111001)2

第34頁乘積整數(shù)部分0.875

×2[1].750…………1(高位)

×2[1].500…………1

×2[1].000…………1(低位)所以(0.875)10=(0.111)2

所以:(57.875)10=(111001.111)2第35頁練習(xí):十進制轉(zhuǎn)換成8進制(1000)10=(?)8

8│125……………58│15……………78│1……………1答案:(1750)8低位高位8│1000……………0第36頁4.二進制數(shù)與八進制數(shù)、十六進制數(shù)轉(zhuǎn)換

一位八進制數(shù)可用3位二進制數(shù)表示,一位十六進制數(shù)可用4位二進制數(shù)表示,所以八進制、十六進制只是二進制一個簡化表示形式。第37頁(1)二進制轉(zhuǎn)換為八進制或十六進制

在把二進制數(shù)轉(zhuǎn)換成八進制或十六進制表示形式時,應(yīng)從小數(shù)點分別向左和向右按每3位或每4位進行劃分,若小數(shù)點左側(cè)(即整數(shù)部分)位數(shù)不足3或4位,則在高位補0,對小數(shù)點右側(cè)(即小數(shù)部分),則應(yīng)在低位補0來補足3位或4位。劃分后,3位或4位二進制數(shù)用1位八進制數(shù)或十六進制數(shù)來表示。例:(1100111.10101101)2=(001100111.101011010)2=(147.532)8(11001.101)2=(00011001.1010)2=(19.A)16第38頁(2)八進制或十六進制轉(zhuǎn)換為二進制

與上述相反,將八進制數(shù)或十六進制數(shù)轉(zhuǎn)換成二進制表示形式時,則每位分別用3位或4位二進制來表示。例:(31.5)8=(011001.101)2=(11001.101)2(5DE.B8)16=(010111011110.10111000)2=(10111011110.10111)2第39頁計算機中數(shù)表示

1.機器數(shù)和真值

在計算機中只能用數(shù)字化信息來表示數(shù)正、負(fù),人們要求用0表示正號,用1表示負(fù)號。

在計算機內(nèi)部,數(shù)字和符號都用二進制碼表示,二者合在一起組成數(shù)機內(nèi)表示形式,稱為機器數(shù),而它真正表示數(shù)值稱為這個機器數(shù)真值。0101101011011001用8為二進制表示-89機器中用8位二進制數(shù)表示+90符號位,0表示正符號位,1表示負(fù)1.4計算機中數(shù)字字符等編碼第40頁2.定點數(shù)和浮點數(shù)

在計算機中,普通用若干個二進制位表示一個數(shù)或一條指令,把它們作為一個整體來處理、存放和傳送。這種作為一個整體來處理二進制位串,稱為計算機字。表示數(shù)據(jù)字稱為數(shù)據(jù)字,表示指令字稱為指令字。

計算機中運算數(shù),有整數(shù),也有小數(shù),怎樣確定小數(shù)點位置呢?通常有兩種約定:一個是要求小數(shù)點位置固定不變,這時機器數(shù)稱為定點數(shù)。另一個是小數(shù)點位置能夠浮動,這時機器數(shù)稱為浮點數(shù)。微型計算機多項選擇取定點數(shù)。1.4計算機中數(shù)字字符等編碼第41頁(1)定點數(shù)

數(shù)定點是指數(shù)據(jù)字中小數(shù)點位置是固定不變。小數(shù)點位置能夠固定在符號位之后,這時,數(shù)據(jù)字就表示一個純小數(shù)。假如把小數(shù)點位置固定在數(shù)據(jù)字最終,這時,數(shù)據(jù)字就表示一個整數(shù)。

定點表示法所能表示數(shù)值范圍很有限,為了擴大定點數(shù)表示范圍,能夠經(jīng)過編程技術(shù),采取多個字節(jié)來表示一個定點數(shù),比如,采取4個字節(jié)或8個字節(jié)等。00000000000000111111111111111110符號位符號位數(shù)值部分.(小數(shù)點)數(shù)值部分.(小數(shù)點)=-2-15=+32767第42頁(2)浮點數(shù)

浮點表示法就是小數(shù)點在數(shù)中位置是浮動。在以數(shù)值計算為主要任務(wù)計算機中,因為定點表示法所能表示數(shù)范圍太窄,不能滿足計算問題需要,所以就要采取浮點表示法。在一樣字長情況下,浮點表示法能表示數(shù)范圍擴大了。

計算機中浮點表示法包含兩個部分:一部分是階碼,表示指數(shù),記作E;另一部分是尾數(shù),表示有效數(shù)字,記作M。采取浮點表示法,二進制數(shù)N能夠表示為:N=M×2E,其中2為基數(shù),E為階碼,M為尾數(shù)。第43頁

由尾數(shù)部分隱含小數(shù)點位置可知,尾數(shù)總是小于1數(shù)字,它給出該浮點數(shù)有效數(shù)字。尾數(shù)部分符號位確定該浮點數(shù)正負(fù)。階碼給出總是整數(shù),它確定小數(shù)點浮動位數(shù),若階符為正,則向右移動;若階符為負(fù),則向左移動。

在浮點數(shù)表示和運算中,當(dāng)一個數(shù)階碼大于機器所能表示最大碼時,產(chǎn)生“上溢”。上溢時機器普通不再繼續(xù)運算而轉(zhuǎn)入“溢出”處理。當(dāng)一個數(shù)階碼小于機器所能代表最小階碼時產(chǎn)生“下溢”,下溢時普通看成“機器零”來處理。(2)浮點數(shù)第44頁3.原碼、反碼和補碼表示法

為運算方便,機器數(shù)有三種表示法,即原碼、反碼和補碼。

(1)原碼

原碼是用機器數(shù)最高(最左)一位表示符號,其余各位給出數(shù)值絕對值,即正數(shù)最高位為0,負(fù)數(shù)最高位為1,其余各位表示數(shù)值大小。

例1:1111111111111110符號位數(shù)值部分=+32767第45頁例2:X1=+52,X2=-52則[X1]原=00110100最高位0為符號位[X2]原=10110100最高位1為符號位真值數(shù)原碼機器數(shù)采取原碼表示時,數(shù)真值和其原碼之間對應(yīng)關(guān)系簡單,易轉(zhuǎn)換。對于真值零,有正零和負(fù)零:[+0]原=00000[-0]原=10000第46頁(2)反碼

反碼用機器數(shù)最高一位表示符號,數(shù)值位是對負(fù)數(shù)各位取反表示方法。即正數(shù)反碼為其原碼形式;負(fù)數(shù)反碼最高位為1,數(shù)值位為原碼逐位求反而得到。例:X1=+52,X2=-52則[X1]反=00110100,與其原碼形式相同[X2]反=11001011[+0]反=00000[-0]反=11111第47頁(3)補碼

因原碼與反碼對于真值零都有兩種不一樣編碼,引出了補碼表示法,當(dāng)前大多數(shù)計算機中數(shù)據(jù)運算都采取補碼形式。

正數(shù)補碼最高符號位為0,數(shù)值位為其數(shù)值大小,即正數(shù)補碼仍為其原碼。所以正數(shù)原碼、反碼、補碼是同一個編碼。

負(fù)數(shù)補碼最高符號位為1,數(shù)值位各位取反,最低位加上1,即[X]補=[X]反+1。

另從補碼求其原碼時,也可采取將其補碼各位取反后,再最低位加1方法得到其原碼。

在補碼表示中,真值零表示是惟一,均為00000000。第48頁數(shù)據(jù)二進制編碼

1.十進制數(shù)二進制編碼

用二進制編碼來表示十進制數(shù)編碼就稱為二—十進制碼,簡稱BCD(BinaryCodedDecimal)碼。這種編碼特點是保留了十進制權(quán),而數(shù)字則用0和1組合來表示。

常見BCD碼有8421碼、余3碼,格雷(Gray)碼等,它是用4位二進制數(shù)表示1位十進制數(shù)字,既含有二進制形式,又含有十進制特點。而4位二進制數(shù),有16種不一樣組合狀態(tài),從中選出10種來表示十進制數(shù)0~9,有各種選擇方法,在此只介紹慣用幾個。1.4計算機中數(shù)字字符等編碼第49頁(1)十進制有權(quán)碼

有權(quán)碼是指表示十進制數(shù)4位二進制數(shù)中每一位都有一個確定權(quán)值。用得最普遍是8421碼,4位二進制數(shù)中每一位從左到右權(quán)分別為8,4,2,1。依據(jù)這種權(quán)定義,數(shù)字0~98421碼為0000、0001、0010、…、1001。一個十進制數(shù)轉(zhuǎn)換成8421碼非常方便,就是把每一位十進制數(shù)用對應(yīng)8421碼表示,如十進制數(shù)259所對應(yīng)8421碼為001001011001。

②BCD碼與二進制數(shù)之間轉(zhuǎn)換不是直接,要先轉(zhuǎn)換為十進制數(shù),然后再轉(zhuǎn)換成二進制數(shù),反之亦然。例:(1111001.01000101)BCD=(79.45)10=(1001111.0111)2第50頁(2)十進制無權(quán)碼

無權(quán)碼指是表示一個十進制數(shù)4位二進制數(shù)每一位沒有確定權(quán)值。慣用無權(quán)碼有余3碼和格雷碼。

余3碼是在8421碼基礎(chǔ)上每4位加0011而得到。自然二進制碼能夠直接由數(shù)/模轉(zhuǎn)換器轉(zhuǎn)換成模擬信號,但一些情況,比如從十進制3轉(zhuǎn)換成4時二進制碼每一位都要變,使數(shù)字電路產(chǎn)生很大尖峰電流脈沖。而格雷碼在任意兩個相鄰數(shù)之間轉(zhuǎn)換時,只有一個數(shù)位發(fā)生改變,大大地降低了由一個狀態(tài)到下一個狀態(tài)時邏輯混同。格雷碼編碼規(guī)則是使相鄰兩代碼之間只有一位是不一樣,代碼變換是連續(xù),用于計數(shù)器譯碼,在產(chǎn)生各種控制信號時尤其有用。另外因為最大數(shù)與最小數(shù)之間也僅一個數(shù)不一樣,故通常又叫格雷反射碼或循環(huán)碼。第51頁二進制碼->格雷碼(編碼):從最右邊一位起,依次將每一位與左邊一位異或(XOR),作為對應(yīng)格雷碼該位值,最左邊一位不變。格雷碼-〉二進制碼(解碼):從左邊第二位起,將每位與左邊一位解碼后值異或,作為該位解碼后值(最左邊一位依然不變)。進制數(shù)自然二進制數(shù)格雷碼000000000100010001200100011300110010401000110501010111601100101701110100810001100910011101101010111111101111101211001010131101101114111010011511111000第52頁2.字符二進制編碼

字符是計算機中另一個主要數(shù)據(jù)形式,它們也必須按特定規(guī)則用二進制編碼表示。編碼能夠有各種方式,當(dāng)前在微機中最普遍采取是ASCII碼,即美國家標(biāo)準(zhǔn)準(zhǔn)信息交換碼(AmericanStandardCodeforInformationInterchange)。

ASCII碼是7位二進制碼,可表示27=128種字符,其中包含0~9十個數(shù)字、52個大小寫英文字母、32個控制字符,其它為專用字符。如“A”ASCII碼為1000001B(41H),十進制數(shù)是65。ASCII碼字符表第53頁因為在計算機中一個字節(jié)為8個二進制位,它是信息存取最基本單位,所以慣用一個字節(jié)來表示一個ASCII碼,它最高位通常為0。

ASCII碼值從小到大編碼次序是控制字符、數(shù)字、大寫字母、小寫字母;94個圖形字符ASCII碼為21H~7EH;小寫字母比對應(yīng)大寫字母ASCII碼值大32。

ASCII碼是7位二進制碼,可表示27=128種字符,其中包含0~9十個數(shù)字、52個大小寫英文字母、32個控制字符,其它為專用字符。如“A”ASCII碼為1000001B(41H),十進制數(shù)是65。第54頁3.漢字二進制編碼

(1)國家標(biāo)準(zhǔn)碼與區(qū)位碼

為了適應(yīng)漢字信息處理需要,1981年我國頒布了《信息交換用漢字編碼字符集-基本集》,簡稱GB2312-80。它要求了信息處理交換用6763個漢字和682個圖形字符編碼。其中漢字分為兩級,第一級3755個,按漢語拼音字母次序排列,同音字以筆劃次序為序。第二級3008個,按部首次序排列。第55頁

(2)漢字內(nèi)碼

漢字內(nèi)碼是指漢字在計算機內(nèi)部進行存放和加工處理時所使用代碼。

當(dāng)前漢字內(nèi)碼大多采取基于國際碼兩字節(jié)法,且把國際碼每個字節(jié)最高位都置1。

漢字國家標(biāo)準(zhǔn)碼、區(qū)位碼及內(nèi)碼轉(zhuǎn)換關(guān)系是:

國家標(biāo)準(zhǔn)碼高字節(jié)=區(qū)號(用十六進制)+20H

國家標(biāo)準(zhǔn)碼低字節(jié)=位號(用十六進制)+20H

內(nèi)碼高字節(jié)=國家標(biāo)準(zhǔn)碼高字節(jié)+80H

內(nèi)碼低字節(jié)=國家標(biāo)準(zhǔn)碼低字節(jié)+80H

漢字輸入方式有很多,但漢字內(nèi)碼是統(tǒng)一。第56頁(3)漢字輸入

漢字輸入方法很多,眾多輸入方法可歸納成三大類:鍵盤輸入法、字形識別法和語音識別法。

漢字輸入編碼很多,可歸納為四類:數(shù)字編碼、字音編碼、字形編碼和音形編碼。如:拼音輸入法、五筆字型輸入法第57頁(4)漢字輸出

在計算機內(nèi)部,只對漢字內(nèi)碼進行處理,不包括漢字本身字形。若要輸出漢字處理結(jié)果,則必須把漢字內(nèi)碼還原成漢字字形。一個字符集全部字符形狀描述信息集合在一起稱為該字符集字形信息庫,簡稱字庫。不一樣字體(如宋、仿、楷、黑等)有不一樣字庫。每輸出一個漢字,都必須依據(jù)內(nèi)碼到字庫中找出該漢字字形描述信息,再送去顯示或打印。

描述字符(包含漢字)字形方法主要有兩種:點陣字形和輪廓字形。第58頁

(5)漢字編碼標(biāo)準(zhǔn)集擴充

1993年國際標(biāo)準(zhǔn)化組織公布了通用多八位編碼字符集(UniversalCodedCharacterSet,UCS)國際標(biāo)準(zhǔn)ISO/IEC10646-1。

我國等同采取此標(biāo)準(zhǔn)制訂了新漢字編碼擴展國家標(biāo)準(zhǔn)GB13000.1-1993,并提出了漢字內(nèi)碼擴展規(guī)范GBK-1995。漢字Windows95/98采取是GBK大字符集,該字符集中收錄

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論