第1章 基礎(chǔ)知識(shí)1課件_第1頁
第1章 基礎(chǔ)知識(shí)1課件_第2頁
第1章 基礎(chǔ)知識(shí)1課件_第3頁
第1章 基礎(chǔ)知識(shí)1課件_第4頁
第1章 基礎(chǔ)知識(shí)1課件_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

匯編語言的優(yōu)點(diǎn)說明程序是如何與操作系統(tǒng)、處理器和BIOS接口的;說明數(shù)據(jù)是如何表示并存儲(chǔ)在存儲(chǔ)器與外部設(shè)備上的;闡述處理器是如何訪問與執(zhí)行指令的,以及指令是如何訪問與處理數(shù)據(jù)的;闡述程序是如何訪問外部設(shè)備的。使用匯編語言的理由能夠直接訪問與硬件相關(guān)的存儲(chǔ)器或I/O端口;能夠不受編譯器的限制,對(duì)生成的二進(jìn)制代碼進(jìn)行完全的控制;能夠?qū)﹃P(guān)鍵代碼進(jìn)行更準(zhǔn)確的控制,避免因線程共同訪問或者硬件設(shè)備共享引起的死鎖;能夠根據(jù)特定的應(yīng)用對(duì)代碼做最佳的優(yōu)化,提高運(yùn)行速度;用匯編語言編寫的程序比用高級(jí)語言編寫的程序所要求的存儲(chǔ)空間與執(zhí)行時(shí)間將顯著減少對(duì)于執(zhí)行時(shí)間要求比較苛刻的部分,常常還要用匯編語言來重新編寫;常駐程序(當(dāng)其他程序運(yùn)行的時(shí)候,常駐在存儲(chǔ)器中的程序)和中斷服務(wù)例行程序(處理輸入與輸出的程序)幾乎都是用匯編語言開發(fā)的。第1章基礎(chǔ)知識(shí)

本章是匯編語言程序設(shè)計(jì)的基礎(chǔ),包括進(jìn)位計(jì)數(shù)制及不同基數(shù)的數(shù)之間的轉(zhuǎn)換;二進(jìn)制數(shù)和十六進(jìn)制數(shù)運(yùn)算;計(jì)算機(jī)中數(shù)和字符的表示和幾種基本的邏輯運(yùn)算。1.1進(jìn)位計(jì)數(shù)制與不同基數(shù)的數(shù)之間的轉(zhuǎn)換進(jìn)位計(jì)數(shù)制是一種計(jì)數(shù)的方法,習(xí)慣上最常用的是十進(jìn)制計(jì)數(shù)法,其特點(diǎn)是:

(1)數(shù)碼的個(gè)數(shù)為十個(gè):0,1,2,3,4,5,6,7,8,9;即其基為10(2)遵循逢十進(jìn)一的規(guī)則;

(3)每一位數(shù)字都有相應(yīng)的權(quán),而且是基(10)的整數(shù)次冪;

(4)每一位數(shù)字乘以相應(yīng)的權(quán)之和即為所表示的值。

例如1434.75=1*103+4*102+3*101+4*100+7*10-1+5*10-2說明:

(1)十進(jìn)制不是唯一的進(jìn)位計(jì)數(shù)制,日常用到的還有24小時(shí)為一天,即24進(jìn)制;60分鐘為一小時(shí),即60進(jìn)制。

(2)可推廣到r進(jìn)制:即基為r,有r個(gè)數(shù)碼;逢r進(jìn)一;每位數(shù)字的權(quán)為r的整數(shù)次冪,將每一位數(shù)字乘以相應(yīng)的權(quán)即表示其值。1.二進(jìn)數(shù)的特點(diǎn):基為2,只有0,1兩個(gè)數(shù)碼,逢二進(jìn)一;

2.為什么計(jì)算要用二進(jìn)制,其原因是二進(jìn)制數(shù)便存儲(chǔ)及物理實(shí)現(xiàn)。

3.n位二進(jìn)制數(shù)可以表示的數(shù)據(jù)個(gè)數(shù)為2n;比如,當(dāng)n=3,可以表示8個(gè)數(shù)據(jù),從000到111;當(dāng)n=4,可以表示16個(gè)數(shù)據(jù),從0000到1111。

4.幾種常用的數(shù)制及其數(shù)碼后綴字母:進(jìn)位計(jì)數(shù)制基數(shù)數(shù)碼后綴字母例十六進(jìn)制十進(jìn)制八進(jìn)制二進(jìn)制210820,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F0,1,2,3,4,5,,67,8,90,1,2,3,4,5,,670,1HDOB0A4B5H,1234H789或789D567O或567Q01110101B1.1.1二進(jìn)制數(shù)

1.二進(jìn)數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)_將各非零位的權(quán)累加即可;

2.十進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制數(shù);

(1)降冪法

(2)計(jì)算法整數(shù):除2倒取余數(shù)小數(shù):乘2順取整數(shù)1.1.3十六進(jìn)制數(shù)及其與二進(jìn)制數(shù)之間的轉(zhuǎn)換

1.十六進(jìn)制數(shù)的表示基為16,數(shù)碼為0~9,A~F;逢十六進(jìn)一;

2.十六進(jìn)制數(shù)和二進(jìn)制數(shù)之間的轉(zhuǎn)換

(1)十六進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù):將每一位十六進(jìn)制數(shù)用相應(yīng)的四位二進(jìn)制數(shù)表示即可。例如:2710H=0010011100010000B。1.1.2二進(jìn)制數(shù)和十進(jìn)制數(shù)之間的轉(zhuǎn)換

(2)二進(jìn)制數(shù)轉(zhuǎn)換成十六進(jìn)制數(shù):從小點(diǎn)向兩邊每四位二進(jìn)制數(shù)用一位相應(yīng)的十六進(jìn)制數(shù)表示,不足四位的用0補(bǔ)足。例如:1011010.01B=5A.4H3.十六進(jìn)制數(shù)和十進(jìn)制數(shù)之間的轉(zhuǎn)換(1)十六進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù):將每一位數(shù)乘以相應(yīng)的權(quán),然后累加即可。例如:2710H=2*163+7*162+1*16=10000D

(2)十進(jìn)制數(shù)轉(zhuǎn)換成十六進(jìn)制數(shù):最好借助于八進(jìn)制數(shù)作橋梁,先將十進(jìn)制數(shù)轉(zhuǎn)換成八進(jìn)制數(shù),再將八進(jìn)數(shù)轉(zhuǎn)換成二進(jìn)制數(shù),最后將二進(jìn)制數(shù)轉(zhuǎn)換成十六進(jìn)制數(shù)。例如:10000D轉(zhuǎn)換成八進(jìn)制數(shù)可用除8倒取余數(shù)的方式轉(zhuǎn)換成23420O23420O轉(zhuǎn)換成二進(jìn)制數(shù)為10011100010000B10011100010000B轉(zhuǎn)換成十六進(jìn)制數(shù)為2710H1.2二進(jìn)制和十六進(jìn)制數(shù)運(yùn)算1.2.1二進(jìn)制數(shù)運(yùn)算1.2.2十六進(jìn)制數(shù)運(yùn)算加法規(guī)則:逢二進(jìn)一

0+0=00+1=11+0=11+1=10乘法歸則:兩個(gè)1相乘結(jié)果為1,其余為00*0=00*1=01*0=01*1=1加法:逢十六進(jìn)一,例如減法:借位當(dāng)作十六,例如

05C3H+ 3D25H 42E8H

3D25H- 05C3H 3762H真值:帶符號(hào)的數(shù)據(jù);機(jī)器數(shù):符號(hào)數(shù)值化后的數(shù)據(jù),用最高位表示符號(hào)位機(jī)器數(shù)的編碼有兩種:

(1)原碼:也叫符號(hào)-絕對(duì)值表示法

(2)補(bǔ)碼:正數(shù)---同原碼負(fù)數(shù)---用2n-|絕對(duì)值|,其中n為字長。求法為除符號(hào)位外,其余各位求反加1。3.用補(bǔ)碼表示數(shù)據(jù)的原因:便于運(yùn)算的實(shí)現(xiàn)。4.n位二進(jìn)制數(shù)補(bǔ)碼數(shù)的表示范圍:-2n-1~+2n-1-1

位數(shù)十進(jìn)制數(shù)十六進(jìn)制

n=8-128~+12780H~7FHn=16-32768~+327678000H~7FFFH5.補(bǔ)碼數(shù)的擴(kuò)展:用符號(hào)位填充高位字節(jié)。0表示正1表示負(fù)1.3計(jì)算機(jī)中數(shù)和字符的表示

1.3.1數(shù)的補(bǔ)碼表示求補(bǔ)運(yùn)算:對(duì)一個(gè)正數(shù)的補(bǔ)碼表示按位求反再在末位加1,可以得到與此正數(shù)相應(yīng)的負(fù)數(shù)的補(bǔ)碼表示。補(bǔ)碼表示數(shù)的特征:[X]補(bǔ)=>[-X]補(bǔ)=>[X]補(bǔ)補(bǔ)碼的運(yùn)算規(guī)則:

(1)補(bǔ)碼的加法運(yùn)算:[X+Y]補(bǔ)=[X]補(bǔ)

+[Y]補(bǔ)

(2)補(bǔ)碼的減法運(yùn)算:[X-Y]補(bǔ)=[X]補(bǔ)

+[-Y]補(bǔ)其中:[-Y]補(bǔ)只需對(duì)[Y]補(bǔ)做一次求補(bǔ)運(yùn)算即可得到。運(yùn)算結(jié)果的正確性:只要運(yùn)算結(jié)果沒有發(fā)生溢出,結(jié)果一定正確,無考慮符號(hào)位。求補(bǔ)求補(bǔ)1.3.2補(bǔ)碼的加法和減法無符號(hào)數(shù)的表示范圍:

n位二進(jìn)制數(shù)無符號(hào)數(shù)的表示范圍:0

~+2n-1

位數(shù)十進(jìn)制數(shù)十六進(jìn)制

n=80~2550H~FFHn=160~655350H~FFFFH2.無符號(hào)數(shù)的擴(kuò)展:用0填充高位字節(jié)。1.3.3無符號(hào)整數(shù)字符包括:字母:A、B、…、Z、a、b、...z;

數(shù)字:0、1、…、9

專用字符:+、-、*、/、…

控制字符:BEL(bell響鈴)、LF(LineFeed換行)、CR(CarriageReturn回車)…字符的編碼:ASCII——美國標(biāo)準(zhǔn)信息交換代碼編碼長度:一個(gè)字節(jié),只用低七位,最高位常用作校驗(yàn)位。編碼個(gè)數(shù):27=128個(gè),其中:控制碼33個(gè),圖形碼85個(gè)。3.要求熟記的字符編碼:控制符:響鈴(07H)、回車(ODH)、換行(OAH)。圖形符:空格(20H)、數(shù)字(30H)、大寫字母‘A’(41H)

小寫字母‘a(chǎn)’(61H)1.3.4字符表示法1.4.1“與”運(yùn)算(AND):雙目運(yùn)算,常用于對(duì)指定位置0運(yùn)算規(guī)則:只有當(dāng)兩個(gè)運(yùn)算對(duì)象都是“1”時(shí),“與”的結(jié)果才為1,其他為0。1.4.2“或”運(yùn)算(OR):雙目運(yùn)算,常用于對(duì)指定位置1運(yùn)算規(guī)則:只有當(dāng)兩個(gè)運(yùn)算對(duì)象都是“0”時(shí),“或”的結(jié)果才為0,其他為1。1.4.3“異或”運(yùn)算(XOR):雙目運(yùn)算,常用于對(duì)指定位取反運(yùn)算規(guī)則:只有當(dāng)兩個(gè)運(yùn)算對(duì)象的值相異時(shí),“異或”的結(jié)果才為1,否則為0。1.4.4“非”運(yùn)算(NOT):單目運(yùn)算,用于對(duì)各位求反。運(yùn)算規(guī)則:“0”的非為“1”;而“1”的非為“0”。AA0110ABA∧BA∨BA∨B000 000101

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論