C計算機基礎(chǔ)知識_第1頁
C計算機基礎(chǔ)知識_第2頁
C計算機基礎(chǔ)知識_第3頁
C計算機基礎(chǔ)知識_第4頁
C計算機基礎(chǔ)知識_第5頁
已閱讀5頁,還剩45頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

計算機基礎(chǔ)知識計算機基礎(chǔ)知識1.1 計算機原理概述1.2二進制數(shù)在計算機中的應(yīng)用1.3程序設(shè)計常用進制數(shù)1.1計算機原理概述計算機、單片機:系統(tǒng)包含CPU、存儲器和輸入/輸出接口等電路模塊。如果集成在單片的芯片上,就是單片機。1.1.1計算機硬件系統(tǒng)1.1計算機原理概述

電子計算機的問世,最重要的奠基人是英國科學(xué)家艾蘭·

圖靈(AlanTuring)和美籍匈牙利科學(xué)家馮·

諾依曼(JohnVon·

Neuman)。圖靈的貢獻是建立了圖靈機的理論模型,奠定了人工智能的基礎(chǔ)。馮·

諾依曼則是首先提出了計算機體系結(jié)構(gòu)的設(shè)想。1、馮·諾依曼體系

1946年美籍匈牙利科學(xué)家馮·諾依曼提出存儲程序原理,把程序本身當(dāng)作數(shù)據(jù)來對待,程序和該程序處理的數(shù)據(jù)用同樣的方式存儲,并確定了存儲程序計算機的五大組成部分和基本工作方法。

1.1計算機原理概述1.1計算機原理概述CPU(包含運算器和控制器)執(zhí)行程序,實現(xiàn)對數(shù)據(jù)信息進行處理和對整個系統(tǒng)進行控制。存儲器包括隨機存取存儲器(RAM)和只讀存儲器(ROM),用來存放數(shù)據(jù)和程序。輸入/輸出(I/O)接口電路實現(xiàn)微處理器與外部設(shè)備的連接,溝通微型機與外界之間的信息聯(lián)系。1.1計算機原理概述2、計算機系統(tǒng)信息傳送通道

總線:用來傳送信息的一組導(dǎo)線,為CPU和其它部件之間提供數(shù)據(jù)、地址和控制信息的傳輸通道。地址總線:專門用來傳送地址信息。數(shù)據(jù)總線:用于傳送數(shù)據(jù)信息??刂瓶偩€:用來傳送控制信號。1.1計算機原理概述1.1.2計算機軟件系統(tǒng)系統(tǒng)軟件

系統(tǒng)軟件是指控制和協(xié)調(diào)計算機及外部設(shè)備,支持應(yīng)用軟件開發(fā)和運行的系統(tǒng),是無需用戶干預(yù)的各種程序的集合。

應(yīng)用軟件用戶可以使用的各種程序設(shè)計語言,以及用各種程序設(shè)計語言編制的應(yīng)用程序的集合,分為應(yīng)用軟件包和用戶程序

1.1計算機原理概述1.1.3計算機的工作過程在進入運行前,要將事先編好的程序裝入存儲器中。程序:為了完成某項工作而由指令進行的有序組合。指令:計算機執(zhí)行某種操作的命令。通常由操作碼和操作數(shù)兩部分組成,操作碼代表要執(zhí)行的操作,而操作數(shù)表示參加操作的數(shù)或者操作數(shù)所在的地址。

1.1計算機原理概述指令在存儲器中是順序存放的,而指令的執(zhí)行過程一般分為兩個階段:1.讀取指令在CPU的控制下,由內(nèi)部程序指示器形成指令存儲地址并從該地址中讀取指令后送到指令寄存器中保存;2.執(zhí)行指令在CPU的控制下,由指令譯碼器對指令譯碼,產(chǎn)生各種定時和控制信號,并執(zhí)行該指令所規(guī)定的操作。1.1計算機原理概述1.2二進制數(shù)在計算機中的應(yīng)用1.2.1二進制數(shù)1、進位計數(shù)制/數(shù)制按進位方式實現(xiàn)計數(shù)的一種規(guī)則,簡稱為進位制或數(shù)制。數(shù)制有兩個基本要素:基數(shù):表示某種進位制所具有的數(shù)字符的個數(shù)以及進位的規(guī)則位權(quán)(簡稱權(quán)):表示一個進位計數(shù)制的數(shù)中不同數(shù)位上數(shù)字的單位數(shù)值,第i位的權(quán)即為基數(shù)的i次冪1>十進制十進制數(shù)的基數(shù)為10,由0-9十個數(shù)字符,逢十進一。十進制的表示方式:其中m表示小數(shù)位的位數(shù),n表示正數(shù)的位數(shù),K為0-9。1.2二進制數(shù)在計算機中的應(yīng)用2.>二進制基數(shù)為2的數(shù)制為二進制,有0、1兩個數(shù)字符,逢二進一。任何一個二進制數(shù)N可以表示為:其中m、n的含義與上述相同,K為0-1。1.2二進制數(shù)在計算機中的應(yīng)用3.>十六進制基數(shù)為16的數(shù)制為十六進制,有0-9、A、B、C、D、E、F十六個數(shù)字符(其中A-F分別表示10一15),遭十六進一。一個十六進制數(shù)N可以表示為:二進制數(shù)的位數(shù)多,書寫和閱讀很不方便,容易出錯。

微機中通常采用十六進制數(shù)作為二進制數(shù)的縮寫形式,書寫簡單.一目了然。

1.2二進制數(shù)在計算機中的應(yīng)用4.>其他進制12進制與鐘算術(shù)24進制與標準時間表示法天文歷法中的進制1.2二進制數(shù)在計算機中的應(yīng)用1.2.2計算機中二進制數(shù)的存儲單位1、位(Bit)位是計算機所能表示的最小數(shù)據(jù)單位,即1位二進制數(shù)1或者0。2、字節(jié)(Byte)8位二進制數(shù)稱為一個字節(jié)。最基本的數(shù)據(jù)單位。1.2二進制數(shù)在計算機中的應(yīng)用3、字(Word)16位二進制數(shù)稱為一個字。1個字有2個字節(jié)。視CPU不同,字在內(nèi)存中有兩種不同的存放方式:

順序存放,即字的高8位(高字節(jié))存放在低地址單元,低8位(低字節(jié))存放在高地址單元(高位在前,低位在后)

逆序存放,即字的低字節(jié)存放在低地址單元,高字節(jié)存放在高地址單元。(低位在前,高位在后)

字用于衡量計算機一次性處理數(shù)據(jù)的能力。1.2二進制數(shù)在計算機中的應(yīng)用1.2二進制數(shù)在計算機中的應(yīng)用1、機器數(shù)和真值在計算機中,將“+”、“-”符號數(shù)字化,用“0”表示“+”號,用“1”表示“-”號。這樣的數(shù)稱為機器數(shù),而把機器數(shù)所代表的數(shù)的實際值稱為機器數(shù)的真值。例如,真值x1=+1001001x2=-1001001

機器數(shù)x1=01001001x2=110010011.2.3機器數(shù)的表示形式2、無符號數(shù)與有符號數(shù)的機器數(shù)表示無符號數(shù)只表示數(shù)值大小,常用于表示無正負概念的數(shù)、代碼和存儲器的地址有符號數(shù)具有正負的概念,用“0”表示或者“1”放到表示數(shù)值大小的數(shù)碼序列最前面來表示正負數(shù)。1.2二進制數(shù)在計算機中的應(yīng)用1.2.4機器數(shù)的原碼、反碼與補碼計算機中帶符號數(shù)有三種表示方法:原碼、反碼和補碼。在這三種機器數(shù)的表示形式中,符號位的規(guī)定相同,僅是數(shù)值部分的表示形式不同。1、原碼正數(shù)的符號位用“0”表示,負數(shù)的符號位用“1”表示,其余數(shù)字位表示數(shù)值本身。例如,x1=+1101101[x1]原=01101101 x2=-1101101[x2]原=111011011.2二進制數(shù)在計算機中的應(yīng)用對于數(shù)0,可以認為它是+0,也可以認為它是-0。因此,0在原碼表示中有下列兩種形式:

[+0]原=00000000[-0]原=10000000由此可見,數(shù)0的原碼表示不是唯一的。對于8位二進制數(shù)(稱為一個字節(jié))來說,原碼可表示的數(shù)的范圍是-127~+127。1.2二進制數(shù)在計算機中的應(yīng)用2、反碼正數(shù)的反碼和正數(shù)的原碼相同。負數(shù)的反碼其符號位為1,其余各位逐位取反,即0變?yōu)?,1變?yōu)?。例如,

x1=+1101101[x1]原=01101101[x1]反=01101101 x2=-1101101[x2]原=11101101 [x2]反=100100101.2二進制數(shù)在計算機中的應(yīng)用當(dāng)x=±0時,[x]反也有兩種表示形式即:

[+0000000]反=00000000 [-0000000]反=11111111所以,在反碼表示中.“0”的表示也不是唯一的。8位二進制數(shù)反碼所能表示的數(shù)的范圍是-127~+127。1.2二進制數(shù)在計算機中的應(yīng)用3、補碼在計算機系統(tǒng)中,數(shù)值一律用補碼來表示和存儲。原因在于,使用補碼,可以將符號位和數(shù)值域統(tǒng)一處理;同時,加法和減法也可以統(tǒng)一處理。

正數(shù)的補碼與正數(shù)的原碼相同,負數(shù)的補碼等于負數(shù)的反碼加1。(即符號位不變,數(shù)值位取反,后整體在+1)如何求補碼的原碼:即再對補碼求一次補碼就還原成原碼。例如:

x1=+1101101[x1]原=01101101[x1]反=01101101 [x1]補=01101101 x2=-1101101 [x2]原=11101101 [x2]反=10010010[x2]補=100100111.2二進制數(shù)在計算機中的應(yīng)用采用補碼表示,可以把減法運算變成加法運算。但要注意,在求和的計算中,需要將運算結(jié)果產(chǎn)生的進位丟掉,才能得到正確的結(jié)果,其結(jié)果亦為補碼表示。例如,21-15=21+[-15]補

當(dāng)數(shù)用補碼表示時,無論是加法還是減法運算都可采用加法運算,而且數(shù)0的表示是唯一的。因此,在微機中普遍用補碼來表示帶符號的數(shù)。8位二進制數(shù)補碼所能表示的數(shù)的范圍是-128~+127。1.2二進制數(shù)在計算機中的應(yīng)用1、

正數(shù)有原碼=反碼=補碼2、負數(shù)的原碼、反碼、補碼各不相同,但符號位一定為1.1.2二進制數(shù)在計算機中的應(yīng)用1.2二進制數(shù)在計算機中的應(yīng)用求-100的補碼+100=64H=01100100B-100=11100100B10011011B10011100B補碼的概念:X和y的和得到一個最小進位,則稱x和y互為補數(shù)。該最小進位值稱為“?!?。1.2二進制數(shù)在計算機中的應(yīng)用十進制中:9+1=10

(對一位十進制數(shù)而言,1和9互補)9-1=9+(1)補

=9+9=18,丟棄模10之后得到8十六進制中:[+100]補=64H[-100]補=9CH[+100]補+[-100]補=64H+9CH=100H1.2二進制數(shù)在計算機中的應(yīng)用如何求某一數(shù)的補碼方法1:[-100]補=100H-[+100]補=100H-64H=9CH補碼2:[-100]補=256-100=156D=9CH1.2二進制數(shù)在計算機中的應(yīng)用1.2二進制數(shù)在計算機中的應(yīng)用1.2二進制數(shù)在計算機中的應(yīng)用1.2二進制數(shù)在計算機中的應(yīng)用1.2.5二進制數(shù)的運算1、二進制算術(shù)運算加、減、乘、除2、二進制邏輯運算

與、或、非、異或1.2二進制數(shù)在計算機中的應(yīng)用特別注意:上述二進制的原補碼運算都是基于單字節(jié)的8位數(shù)運算。如果C語言中2或4個字節(jié)的數(shù)一起運算時,怎么辦?

inta=-5;charb=-5;它們的原補碼怎樣表示?

intc=a+b;(涉及到數(shù)據(jù)類型轉(zhuǎn)化,字節(jié)位數(shù)要按最高字節(jié)數(shù)量補齊)

[a]原=[1000000000000101]

[b]原=[10000101]不對![b]原=[1000000000000101]正確

1.3.1十六進制數(shù)與十進制數(shù)為了區(qū)別不同的數(shù)制,通常在數(shù)字后面加一個后綴(B或H);B(binary)表示二進制;H(Hexadecimal)表示十六進制;例如,10101010B為二進制數(shù),8FH為十六進制數(shù)。1.3程序設(shè)計常用進制數(shù)1.3程序設(shè)計常用進制數(shù)1.3.2數(shù)制轉(zhuǎn)換*不同數(shù)制只是描述數(shù)的不同方式。同一個數(shù)可以用不同的進位制來表示,它們可以相互轉(zhuǎn)換。應(yīng)該保證轉(zhuǎn)換前、后所表示的數(shù)值是相等的,或者在滿足規(guī)定的誤差范圍內(nèi)近似相等。

十進制二進制十六進制012345678910111213141500000001001000110100010101100111100010011010101111001101111011110123456789ABCDEF十進制、二進制、十六進制對照表1.>十進制轉(zhuǎn)換為二進制a.十進制整數(shù)轉(zhuǎn)化為二進制整數(shù)轉(zhuǎn)換方法:除基取余。即不斷地用2去除待轉(zhuǎn)換的十進制數(shù),將每次所得的余數(shù)(0或1)依次記為K0、K1、…,直到商等于0為止,最后一次余數(shù)記作Kn-l,則Kn-1Kn-2…K1K0為轉(zhuǎn)換后的二進制數(shù)。例:將(11)10轉(zhuǎn)換為二進制1.3程序設(shè)計常用進制數(shù)b.十進制小數(shù)轉(zhuǎn)換為二進制小數(shù)轉(zhuǎn)換方法:乘基取整。就是不斷地用2去乘要轉(zhuǎn)換的十進制小數(shù),將每次所得的整數(shù)(0或者1),依次記作K-1、K-2、…。若乘積的小數(shù)部分最后為0,那么最后一次乘積的整數(shù)部分記為K-m;若乘積的小數(shù)部分最后不可能為0,則只要換算到滿足所需要的精度為止。例:將(0.75)10轉(zhuǎn)化為二進制數(shù)例:將(0.33)10轉(zhuǎn)化為8位小數(shù)的二進制數(shù)1.3程序設(shè)計常用進制數(shù)c.帶小數(shù)的十進制數(shù)轉(zhuǎn)換為二進制數(shù)一個帶小數(shù)的十進制致轉(zhuǎn)換為二進制數(shù)時.先分別將其整數(shù)部分和小數(shù)部分轉(zhuǎn)化為相對應(yīng)的二進制數(shù),然后用小數(shù)點將兩部分連接起來,即可得轉(zhuǎn)換的結(jié)果。例:將(11.75)10轉(zhuǎn)換為二進制數(shù)1.3程序設(shè)計常用進制數(shù)2.>二進制數(shù)、十六進制數(shù)轉(zhuǎn)換為十進制數(shù)轉(zhuǎn)換方法:把二進制(或十六進制)數(shù)按權(quán)展開、利用十進制數(shù)運算法則求和.即可得相應(yīng)的十進制數(shù)。例:將二進制數(shù)11101110.01轉(zhuǎn)換為十進制數(shù)。例:將十六進制數(shù)FA轉(zhuǎn)換為十進制數(shù)1.3程序設(shè)計常用進制數(shù)3.>二進制、十六進制之間的相互轉(zhuǎn)換1位十六進制數(shù)需要4位二進制數(shù)表示,或者說1位十六進制數(shù)可以表示成4位二進制數(shù)。因此,利用這種對應(yīng)關(guān)系可直接實現(xiàn)二進制和十六進制之間的相互轉(zhuǎn)換。例:將十六進制數(shù)8E轉(zhuǎn)換為二進制數(shù)。例:將二進制數(shù)10110101轉(zhuǎn)換為十六進制數(shù)。1.3程序設(shè)計常用進制數(shù)編碼:是指按一定規(guī)則組合成的若干位二進制代碼。一、二—十進制編碼在計算機輸入和輸出數(shù)據(jù)時,通常采用十進制數(shù)表示.這樣的十進制數(shù)是用二進制編碼表示的。1位十進制數(shù)用4位二進制編碼來表示的方法很多,最常用的是8421BCD碼,簡稱BCD碼,用二進制數(shù)的0000一1001來分別表示十進制數(shù)的0-9。BCD碼有兩種形式:壓縮BCD碼和非壓縮BCD碼。

1.4BCD碼與ASCII碼1.壓縮BCD碼壓縮ECD碼用4位二進制數(shù)表示1位十進制數(shù),一個字節(jié)表示2位十進制數(shù)。例如10010111表示十進制數(shù)97。2.非壓縮BCD碼非壓縮BCD碼用8位二進制數(shù)表示1位十進制數(shù),高4位總是0000,低4位的0000-1001表示0-9。例如,00001001表示十進制數(shù)9。1.4BCD碼與ASCII碼3.BCD碼的加減計算對于一字節(jié)的BCD碼的加法,若低4位相加后的結(jié)果大于9或者向高4位發(fā)生了進位,則將其結(jié)果加6進行修正,高位亦然;對于一字節(jié)的BCD碼的減法,若低4位相減的結(jié)果大于9或是向高4位發(fā)生了借位,則將其結(jié)果減6進行修正,高位亦然。1.4BCD碼與ASCII碼1.4BCD碼與ASCII碼二、字母和符號的編碼在計算機中,字母和符號也是按特定的二進制編碼表示的,微型機里普遍采用ASCII碼。DELo←O?/USSI1111F~n↑N>·RSSO1110E}m]M=

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論