




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、匯編語言第1章基礎(chǔ)知識匯編語言(王爽)第1章-基礎(chǔ)知識第1章 基礎(chǔ)知識n1.1 機(jī)器語言 1. 9 數(shù)據(jù)總線n1.2 匯編語言的產(chǎn)生 1.10 控制總線n1.3 匯編語言的組成 1.11 內(nèi)存地址空間(概述)n1.4 存儲器 1.12 主板n1.5 指令和數(shù)據(jù) 1.13 接口卡n1.6 存儲單元 1.14 各類存儲器芯片n1.7 CPU對存儲器的讀寫 1.15 內(nèi)存地址空間n1.8 地址總線 引言n匯編語言是直接在硬件之上工作的編程語言,首先要了解硬件系統(tǒng)的結(jié)構(gòu),才能有效的應(yīng)用匯編語言對其編程。n在本章中,對硬件系統(tǒng)結(jié)構(gòu)的問題進(jìn)行一部分的探討,以使后續(xù)的課程可在一個好的基礎(chǔ)上進(jìn)行。引言n當(dāng)課程
2、進(jìn)行到需要補(bǔ)充新的基礎(chǔ)知識(關(guān)于編程結(jié)構(gòu)或其他的)時候,再對相關(guān)的基礎(chǔ)知識進(jìn)行介紹和探討。n本書的原則是,以后用到的知識,以后再說。引言n匯編課程的研究重點放在如何利用硬件系統(tǒng)的編程結(jié)構(gòu)和指令集有效靈活的控制系統(tǒng)進(jìn)行工作。1.1 機(jī)器語言n機(jī)器語言是機(jī)器指令的集合。n機(jī)器指令展開來講就是一臺機(jī)器可以正確執(zhí)行的命令。1.1 機(jī)器語言n指令:01010000 (PUSH AX)n電平脈沖: 1.1 機(jī)器語言n以后我們提到的計算機(jī)是指由CPU 和其他受CPU 直接或間接控制的芯片、器件、設(shè)備組成的計算機(jī)系統(tǒng);n比如我們最常見的PC 機(jī)。1.1 機(jī)器語言n程序員們將 0、1 數(shù)字編程的程序代碼打在紙帶
3、或卡片上,1打孔,0不打孔,再將程序通過紙帶機(jī)或卡片機(jī)輸入計算機(jī),進(jìn)行運(yùn)算。n示例 應(yīng)用8086CPU完成運(yùn)算: S = 768 + 12288 12801.1 機(jī)器語言nS = 768 + 12288 - 1280n機(jī)器碼: n假如將程序錯寫成以下這樣,請找處錯誤: 1.1 機(jī)器語言n在顯示器上輸出“welcome to masm”。 機(jī)器碼n看到這樣的程序,你會有什么感想?n如果程序里有一個“ 1 ”被誤寫為“ 0 ”,又如何去查找呢?1.2 匯編語言的產(chǎn)生n匯編語言的主體是匯編指令。n匯編指令和機(jī)器指令的差別在于指令的表示方法上。匯編指令是機(jī)器指令便于記憶的書寫格式。n匯編指令是機(jī)器指令
4、的助記符。1.2 匯編語言的產(chǎn)生n機(jī)器指令: n操作:寄存器BX的內(nèi)容送到AX中n匯編指令:MOV AX,BXn這樣的寫法與人類語言接近,便于閱讀和記憶。寄存器n寄存器:簡單的講是CPU中可以存儲數(shù)據(jù)的器件,一個CPU中有多個寄存器。nAX是其中一個寄存器的代號,nBX是另一個寄存器的代號。n更詳細(xì)的內(nèi)容我們在以后的課程中將會講到。1.2 匯編語言的產(chǎn)生n計算機(jī)能讀懂的只有機(jī)器指令,那么如何讓計算機(jī)執(zhí)行程序員用匯編指令編寫的程序呢?用匯編語言編寫程序的工作過程1.3 匯編語言的組成n匯編語言由以下3類組成:n1、匯編指令(機(jī)器碼的助記符)n2、偽指令 (由編譯器執(zhí)行)n3、其它符號(由編譯器識
5、別)n匯編語言的核心是匯編指令,它決定了匯編語言的特性。 1.4 存儲器nCPU 是計算機(jī)的核心部件它控制整個計算機(jī)的運(yùn)作并進(jìn)行運(yùn)算,要想讓一個CPU 工作,就必須向它提供指令和數(shù)據(jù)。n指令和數(shù)據(jù)在存儲器中存放,也就是平時所說的內(nèi)存。1.4 存儲器n在一臺PC機(jī)中內(nèi)存的作用僅次于CPU。n離開了內(nèi)存,性能再好的CPU也無法工作。1.4 存儲器n磁盤不同于內(nèi)存,磁盤上的數(shù)據(jù)或程序如果不讀到內(nèi)存中,就無法被CPU 使用。1.5 指令和數(shù)據(jù)n指令和數(shù)據(jù)是應(yīng)用上的概念。n在內(nèi)存或磁盤上,指令和數(shù)據(jù)沒有任何區(qū)別,都是二進(jìn)制信息。1.5 指令和數(shù)據(jù)n二進(jìn)制信息: 89D8H (數(shù)據(jù)) MOV AX,BX
6、(程序)1.6 存儲單元n存儲器被劃分為若干個存儲單元,每個存儲單元從0開始順序編號;n例如: 一個存儲器有128個存儲單元, 編號從0127。 如右圖示:1.6 存儲單元n對于大容量的存儲器一般還用以下單位來計量容量(以下用B來代表Byte):n1KB=1024Bn1MB=1024KBn1GB=1024MBn1TB=1024GBn磁盤的容量單位同內(nèi)存的一樣,實際上以上單位是微機(jī)中常用的計量單位。1.7 CPU對存儲器的讀寫nCPU要想進(jìn)行數(shù)據(jù)的讀寫,必須和外部器件(標(biāo)準(zhǔn)的說法是芯片)進(jìn)行三類信息的交互:n存儲單元的地址(地址信息)n器件的選擇,讀或?qū)懨睿刂菩畔ⅲ﹏讀或?qū)懙臄?shù)據(jù)(數(shù)據(jù)信息)
7、1.7 CPU對存儲器的讀寫n那么CPU是通過什么將地址、數(shù)據(jù)和控制信息傳到存儲芯片中的呢?n電子計算機(jī)能處理、傳輸?shù)男畔⒍际请娦盘?,電信號?dāng)然要用導(dǎo)線傳送。1.7 CPU對存儲器的讀寫n在計算機(jī)中專門有連接CPU和其他芯片的導(dǎo)線,通常稱為總線。n物理上:一根根導(dǎo)線的集合;n邏輯上劃分為: n地址總線n數(shù)據(jù)總線n控制總線n圖示1.7 CPU對存儲器的讀寫n總線在邏輯上劃分的圖示:1.7 CPU對存儲器的讀寫nCPU在內(nèi)存中讀或?qū)懙臄?shù)據(jù)演示:n讀演示n寫演示n從上面我們知道CPU是如何進(jìn)行數(shù)據(jù)讀寫的??墒俏覀?nèi)绾蚊钣嬎銠C(jī)進(jìn)行數(shù)據(jù)的讀寫呢?1.7 CPU對存儲器的讀寫1.7 CPU對存儲器的讀寫
8、1.7 CPU對存儲器的讀寫n對于8086CPU,下面的機(jī)器碼能夠完成從3號單元讀數(shù)據(jù):n機(jī)器碼: n含義:從3號單元讀取數(shù)據(jù)送入寄存器AXnCPU接收這條機(jī)器碼后將完成上面所述的讀寫工作。1.7 CPU對存儲器的讀寫n機(jī)器碼難于記憶,用匯編指令來表示,情況如下:n機(jī)器碼:n對應(yīng)的匯編指令:MOV AX,3n含義:傳送3號單元的內(nèi)容到AX1.8 地址總線nCPU是通過地址總線來指定存儲單元的。n地址總線上能傳送多少個不同的信息,CPU就可以對多少個存儲單元進(jìn)行尋址。1.8 地址總線n地址總線發(fā)送地址信息演示1.8 地址總線1.8 地址總線n一個CPU有N根地址總線,則可以說這個CPU的地址總線
9、的寬度為N。n這樣的CPU最多可以尋找的N次方個內(nèi)存單元。1.9 數(shù)據(jù)總線nCPU與內(nèi)存或其它器件之間的數(shù)據(jù)傳送是通過數(shù)據(jù)總線來進(jìn)行的。n數(shù)據(jù)總線的寬度決定了CPU和外界的數(shù)據(jù)傳送速度。1.9 數(shù)據(jù)總線n我們來分別看一下它們向內(nèi)存中寫入數(shù)據(jù)89D8H時,是如何通過數(shù)據(jù)總線傳送數(shù)據(jù)的:n8088CPU數(shù)據(jù)總線上的數(shù)據(jù)傳送情況n8086CPU數(shù)據(jù)總線上的數(shù)據(jù)傳送情況1.9 數(shù)據(jù)總線 8位數(shù)據(jù)總線上傳送的信息1.9 數(shù)據(jù)總線 16位數(shù)據(jù)總線上傳送的信息1.10 控制總線nCPU對外部器件的控制是通過控制總線來進(jìn)行的。在這里控制總線是個總稱,控制總線是一些不同控制線的集合。n有多少根控制總線,就意味著
10、CPU提供了對外部器件的多少種控制。所以,控制總線的寬度決定了CPU對外部器件的控制能力。n控制總線上發(fā)送的控制信息1.10 控制總線1.10 控制總線n前面所講的內(nèi)存讀或?qū)懨钍怯蓭赘刂凭€綜合發(fā)出的:n其中有一根名為讀信號輸出控制線負(fù)責(zé)由CPU 向外傳送讀信號,CPU 向該控制線上輸出低電平表示將要讀取數(shù)據(jù);n有一根名為寫信號輸出控制線負(fù)責(zé)由CPU向外傳送寫信號。節(jié)節(jié) 小結(jié)n(1)匯編指令是機(jī)器指令的助記符,同機(jī)器指令一一對應(yīng)。n(2)每一種CPU都有自己的匯編指令集。節(jié)節(jié) 小結(jié)n(3)CPU可以直接使用的信息在存儲器中存放。n(4)在存儲器中指令和數(shù)據(jù)沒有任何區(qū)別,都是二進(jìn)制信息。節(jié)節(jié)
11、小結(jié)n(5)存儲單元從零開始順序編號。n(6)一個存儲單元可以存儲 8 個 bit (用作單位寫成“b”),即 8 位二進(jìn)制數(shù)。n(7)1B = 8b1KB = 1024B 1MB = 1024KB 1GB = 1024MB節(jié)節(jié) 小結(jié)(續(xù))n(8)每一個CPU芯片都有許多管腳,這些管腳和總線相連。也可以說,這些管腳引出總線。一個CPU可以引出三種總線的寬度標(biāo)志了這個CPU的不同方面的性能:n地址總線的寬度決定了CPU的尋址能力;n數(shù)據(jù)總線的寬度決定了CPU與其它器件進(jìn)行數(shù)據(jù)傳送時的一次數(shù)據(jù)傳送量;n控制總線寬度決定了CPU對系統(tǒng)中其它器件的控制能力。節(jié)節(jié) 小結(jié)(續(xù))n在匯編課程中,我們從功能的
12、角度介紹了這三類總線,對實際的連接情況不做討論。n特別提示特別提示n檢測點 (Page 8)n沒有通過檢測點請不要向下學(xué)習(xí)! 1.11 內(nèi)存地址空間(概述)n什么是內(nèi)存地址空間呢?n一個CPU的地址線寬度為10,那么可以尋址1024個內(nèi)存單元,這1024個可尋到的內(nèi)存單元就構(gòu)成這個CPU的內(nèi)存地址空間。下面深入討論。n首先需要介紹兩部分基本知識,主板和接口卡。1.12 主板n在每一臺PC機(jī)中,都有一個主板,主板上有核心器件和一些主要器件。n這些器件通過總線(地址總線、數(shù)據(jù)總線、控制總線)相連。1.13 接口卡n計算機(jī)系統(tǒng)中,所有可用程序控制其工作的設(shè)備,必須受到CPU的控制。nCPU對外部設(shè)備
13、不能直接控制,如顯示器、音箱、打印機(jī)等。直接控制這些設(shè)備進(jìn)行工作的是插在擴(kuò)展插槽上的接口卡。1.14 各類存儲器芯片n從讀寫屬性上看分為兩類:隨機(jī)存儲器(RAM)和只讀存儲器(ROM)n從功能和連接上分類:n隨機(jī)存儲器RAMn裝有BIOS的ROMn接口卡上的RAMnPC機(jī)中各類存儲器的邏輯連接情況1.14 各類存儲器芯片n裝有BIOS的ROM BIOS:Basic Input/Output System,基本輸入輸出系統(tǒng)。 BIOS是由主板和各類接口卡(如:顯卡、網(wǎng)卡等)廠商提供的軟件系統(tǒng),可以通過它利用該硬件設(shè)備進(jìn)行最基本的輸入輸出。在主板和某些接口卡上插有存儲相應(yīng)BIOS的ROM。1.15 內(nèi)存地址空間n上述的那些存儲器在物理上是獨立的器件。n但是它們在以下兩點上相同: 1、都和CPU的總線相連。 2、CPU對它們進(jìn)行讀或?qū)懙臅r候都通過控制線發(fā)出內(nèi)存讀寫命令。1.15 內(nèi)存地址空間n將各各類存儲器看作一個邏輯存儲器:n所有的物理存儲器被看作一個由若干存儲單元組成的邏輯存儲器;n每個物理存儲器在這個邏輯存儲器中占有一個地址段,即一段地址空間;nCPU在這段地址空間中讀寫數(shù)
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 航空航天復(fù)合材料 課件第1章 知識點7 復(fù)合材料設(shè)計
- 電纜企業(yè)面試題及答案
- 單招物理試題及答案
- 醫(yī)院禮儀培訓(xùn)
- 神經(jīng)外科病人觀察與護(hù)理
- 腫瘤科護(hù)理成果展示
- 中班冬季自然教育課程設(shè)計
- 中班健康領(lǐng)域:我的時間我做主
- 異常子宮出血護(hù)理查房
- 養(yǎng)老院消防安全培訓(xùn)課件
- 醫(yī)療器械網(wǎng)絡(luò)交易服務(wù)三方平臺質(zhì)量管理體系文件-b2B和B2C綜合版
- 《國際貨運(yùn)代理業(yè)務(wù)操作》課件 任務(wù)七 出口訂艙操作流程規(guī)范
- Unit 7 A Day to Remember 單元話題閱讀理解練習(xí)(原卷版)
- 八年級英語下學(xué)期期末考試(深圳專用)(解析版)
- 《簡歷撰寫技巧》課件
- 反分裂班會課件
- 職業(yè)技術(shù)學(xué)院衛(wèi)生信息管理專業(yè)人才培養(yǎng)方案
- 中建八局如何做好轉(zhuǎn)型升級下的技術(shù)標(biāo)編制工作
- 西南大學(xué)馬原試題及答案
- 2025年電大??菩姓芾砉芾韺W(xué)基礎(chǔ)試題及答案
- 2024中國中信金融資產(chǎn)管理股份有限公司北京市分公司招聘筆試參考題庫附帶答案詳解
評論
0/150
提交評論