版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第1章 基礎,1.1 匯編語言及特點 1.2 數(shù)據(jù)表示 1.3 8086CPU和寄存器組 1.4 存儲器物理地址的形成,開 始,1.1 匯編語言及特點,1.1.1 機器語言 1.1.2 匯編語言 1.1.3 高級語言 1.1.4 匯編語言的特點,返回本章首頁,1.1.1 機器語言,計算機能夠直接識別的數(shù)據(jù)是由二進制數(shù)0和1組成的代碼。機器指令就是用二進制代碼組成的指令,一條機器指令控制計算機完成一個基本操作。 用機器語言編寫的程序是計算機惟一能夠直接識別并執(zhí)行的程序,而用其他語言編寫的程序必須經過翻譯才能變換成機器語言程序,所以,機器語言程序被稱為目標程序。,返回本節(jié),1.1.2 匯編語言,為
2、了克服機器語言的缺點,人們采用助記符表示機器指令的操作碼,用變量代替操作數(shù)的存放地址等,這樣就形成了匯編語言。所以匯編語言是一種用符號書寫的、基本操作與機器指令相對應的、并遵循一定語法規(guī)則的計算機語言。 用匯編語言編寫的程序稱為匯編源程序。 匯編語言是一種符號語言,比機器語言容易理解和掌握,也容易調試和維護。但是,匯編語言源程序要翻譯成機器語言程序才可以由計算機執(zhí)行。這個翻譯的過程稱為“匯編”,這種把匯編源程序翻譯成目標程序的語言加工程序稱為匯編程序。,1.1.3 高級語言,匯編語言雖然較機器語言直觀,但仍然煩瑣難懂。于是人們研制出了高級程序設計語言。高級程序設計語言接近于人類自然語言的語法習
3、慣,與計算機硬件無關,易被用戶掌握和使用。目前廣泛應用的高級語言有多種,如BASIC、FORTRAN、PASCAL、C、C+等等。,1.1.4 匯編語言的特點,(1)匯編語言與處理器密切相關。 (2)匯編語言程序效率高。 (3)編寫匯編語言源程序比編寫高級語言源程序煩瑣。 (4)調試匯編語言程序比調試高級語言程序困難。,匯編語言的主要應用場合:,(1)程序執(zhí)行占用較短的時間,或者占用較小存儲容量的場合。 (2)程序與計算機硬件密切相關,程序直接控制硬件的場合。 (3)需提高大型軟件性能的場合。 (4)沒有合適的高級語言的場合。,1.2 數(shù)據(jù)表示,1.2.1 數(shù)值數(shù)據(jù) 1.2.2 字符數(shù)據(jù),1.
4、2.1 數(shù)值數(shù)據(jù),數(shù)值數(shù)據(jù)分為有符號數(shù)和無符號數(shù)。無符號數(shù)最高位表示數(shù)值,而有符號數(shù)最高位表示符號。有符號數(shù)有不同的編碼方式,常用的是補碼。,1. 原碼,最高位表示符號(正數(shù)用0,負數(shù)用1),其他位表示數(shù)值位,稱為有符號數(shù)的原碼表示法。 【例1.1】有符號數(shù)的原碼表示。 X=45=00101101B X原= 00101101B X=-45, X原=10101101B 原碼表示簡單易懂,但若是兩個異號數(shù)相加(或兩個同號數(shù)相減),就要做減法。為了把減法運算轉換為加法運算就引進了反碼和補碼。,. 反碼,正數(shù)的反碼與原碼相同,符號位用0表示,數(shù)值位值不變。負數(shù)的反碼符號位用1表示, 數(shù)值位為原碼數(shù)值位
5、按位取反形成,即0變1、1變0。 【例1.2】有符號數(shù)的反碼表示。 X=45=00101101B, X反=00101101B X=-45, X反=11010010B,3. 補碼,正數(shù)的補碼與原碼相同,即符號位用0表示,數(shù)值位值不變。負數(shù)的補碼為反碼加1 形成。 【例1.3】有符號數(shù)的補碼表示。 X=45=00101101B X補=00101101B X=-45 X補=11010011B,4. 符號擴展,在數(shù)據(jù)處理時,有時需要把8位二進制數(shù)擴展成16位二進制數(shù),當要擴展的數(shù)是無符號數(shù)時,可在最高位前擴展8個0。如果要擴展的數(shù)是補碼形式的有符號數(shù),那么,就要進行符號位的擴展,符號擴展后,其結果仍是
6、該數(shù)的補碼。 【例1.4】符號擴展表示。 21的8位二進制補碼為:00010101 符號擴展后21的16位二進制補碼為: 0000000000010101。 00010101和0000000000010101都是21的補碼。,5. 數(shù)據(jù)的表示范圍和大小,n位二進制數(shù)能夠表示的無符號整數(shù)的范圍是: 0 I 2n-1 n位二進制數(shù)能夠表示的有符號整數(shù)的范圍是: -2(n-1) I +2(n-1)-1,6十六進制表示,由于二進制數(shù)的基數(shù)太小,書寫和閱讀都不方便.而十六進制的基數(shù)1624,這樣二進制數(shù)與十六進制之間能方便地轉換。因此,習慣把二進制數(shù)改寫成十六進制數(shù),在匯編語言程序設計時尤其如此。 在書
7、寫時,為了區(qū)別于十六進制和二進制數(shù),通常在十六進制數(shù)后加字母H。,返回本節(jié),1.2.2 字符數(shù)據(jù),1ASCII碼 2BCD碼,1ASCII碼,標準ASCII碼用7位二進制數(shù)編碼,共有128個。 計算機存儲器基本單位為8位,ASCII碼的最高位通常為0,通信時,最高位用作奇偶校驗位。 ASCII碼表中的前32個和最后1個編碼是不能顯示的控制字符,用于表示某種操作。 ASCII碼表中20H后的94個編碼是可顯示和打印的字符,其中包括數(shù)碼09,英文字母,標點符號等。,2BCD碼,雖然二進制數(shù)實現(xiàn)容易,但不符合人們的使用習慣,且書寫閱讀不方便,所以在計算機輸入輸出時通常還是采用十進制來表示數(shù),這就需要
8、實現(xiàn)十進制與二進制間的轉換。為了轉換方便,常采用二進制編碼的十進制,簡稱為BCD碼。 BCD碼就是用4位二進制數(shù)表示1位十進制整數(shù)。表示的方法有多種,常用的是8421BCD碼,它的表示規(guī)律如表1.1所示。,表1.1 十進制數(shù)字的8421BCD碼,返回本節(jié),1.3 8086CPU和寄存器組,1.3.1 Intel8086CPU內部結構 1.3.2 8086寄存器組 1.3.3 標志寄存器,返回本章首頁,1.3.1 Intel8086CPU內部結構,圖1.2 8086CPU內部結構,圖1.2 8086CPU內部結構,返回本節(jié),1.3.2 8086寄存器組,圖1.3 8086CPU寄存器分組,1通用
9、寄存器,(1)數(shù)據(jù)寄存器 數(shù)據(jù)寄存器共有4個寄存器AX、BX、CX、DX,用來保存操作數(shù)或運算結果等信息。 AX寄存器稱為累加器。使用頻度最高,用于算術、邏輯運算以及與外設傳送信息等。 BX寄存器稱為基址寄存器。常用于存放存儲器地址。 CX寄存器稱為計數(shù)器。一般作為循環(huán)或串操作等指令中的隱含計數(shù)器。 DX寄存器稱為數(shù)據(jù)寄存器。常用來存放雙字數(shù)據(jù)的高16位,或存放外設端口地址。,變址和指針寄存器包括SI、DI、SP、BP個16位寄存器,主要用于存放某個存儲單元的偏移地址。 SI是源變址寄存器,DI是目的變址寄存器,在字符串操作中,SI和DI都具有自動增量或減量的功能。 SP為堆棧指針寄存器,用于
10、存放當前堆棧段中棧頂?shù)钠频刂?;BP為基址指針寄存器,用于存放堆棧段中某一存儲單元的偏移地址。,(2)變址和指針寄存器,2段寄存器,8086CPU的個16位的段寄存器分別稱為代碼段寄存器CS,數(shù)據(jù)段寄存器DS,堆棧段寄存器SS,附加數(shù)據(jù)段寄存器ES。段寄存器用來確定該段在內存中的起始地址。 代碼段用來存放程序的指令序列。CS存放代碼段的段首址,指令指針寄存器IP指示代碼段中指令的偏移地址。,3指令指針,8086CPU中的指令指針I(yè)P,它總是保存下一次將要從主存中取出指令的偏移地址,偏移地址的值為該指令到所在段段首址的字節(jié)距離。在目標程序運行時,IP的內容由微處理器硬件自動設置,程序不能直接訪問
11、IP,但一些指令卻可改變IP的值,如轉移指令、子程序調用指令等。,返回本節(jié),1.3.3 標志寄存器,8086CPU中有一個很重要的16位標志寄存器,它包含9個標志位,主要用于保存一條指令執(zhí)行后,CPU所處狀態(tài)信息及運算結果的特征。 1條件標志 2狀態(tài)控制標志,1條件標志,(1)進位標志CF (2)零標志ZF (3)符號標志SF (4)溢出標志 OF (5)奇偶標志 PF (6)輔助進位標志AF,2狀態(tài)控制標志,(1)方向標志DF (2)中斷允許標志IF (3)追蹤標志TF,返回本節(jié),1.4 存儲器物理地址的形成,1.4.1 存儲器 1.4.2 存儲器單元的地址和內容 1.4.3 物理地址的形成
12、,返回本章首頁,1.4.1 存儲器,存儲器是計算機的記憶部件,用來存放程序和數(shù)據(jù)。按所在的位置,存儲器可以分成主存儲器和輔助存儲器。 主存儲器存放當前正在執(zhí)行的程序和使用的數(shù)據(jù),CPU可以直接存取,它由半導體存儲器芯片構成,其成本高,容量小,但速度快。 輔助存儲器可用來長期保存大量程序和數(shù)據(jù),CPU需要通過I/O接口訪問,它由磁盤或光盤構成,其成本低,容量大,但速度較慢。,返回本節(jié),1.4.2 存儲器單元的地址和內容,存儲單元地址 :8086系統(tǒng)中,為了標識和存取每一個存儲單元,給每個存儲單元規(guī)定一個編號,這就是存儲單元地址。 存儲單元的內容 :一個存儲單元中存放的信息稱為該存儲單元的內容。,
13、圖1.4表明了存儲器中部分存儲單元存放信息情況。從圖1.4可看到,地址為34560H的字節(jié)的存儲單元中的內容是34H,而地址為34561H的字節(jié)存儲單元中的內容是12H。,返回本節(jié),1.4.3 物理地址的形成,8086CPU的地址線是20位的,這樣最大可尋址空間應為220=1MB,其物理地址范圍從00000HFFFFFH。而8086CPU寄存器都是16位的。那么,這1MB空間如何用16位寄存器表達呢? 根據(jù)要求可把1M字節(jié)地址空間劃成若干邏輯段。每個邏輯段必須滿足兩個條件:一是邏輯段的起始地址(簡稱段首址)必須是16的倍數(shù);二是邏輯段的最大長度為64K。按照這兩個條件,1M字節(jié)地址空間最多可劃分成64K個邏輯段,最少也要劃分成16個邏輯段。邏輯段與邏輯段可以相連,也可以不連,還可以重疊。,【例1.5】各獨立段的分配情況示例。,設CS=B000H、DS=1CDEH、SS=4200H、ES=0150H,它們分別為代碼段、數(shù)據(jù)段、堆棧段和附加段的段首址。自每個段首址
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年航運風險管理實務培訓
- 2026年檔案管理數(shù)字化轉型培訓
- 2026年房地產投資與財務自由的關系
- 2025年北大康奈爾筆試及答案
- 2025年悉尼駕照筆試題庫及答案
- 2025年秦漢中學招聘教師筆試及答案
- 2025年維修電工面試筆試題及答案
- 2025年蘭西管理崗事業(yè)編考試題及答案
- 2026年河北水利發(fā)展集團有限公司公開招聘工作人員1名筆試參考題庫及答案解析
- 2025年洪山街道招聘筆試題庫及答案
- 2026年食品安全員培訓考試模擬題庫及解析答案
- 2025國家國防科技工業(yè)局核技術支持中心社會招聘13人模擬試卷附答案
- 2025年大學新能源材料與器件(新能源材料研發(fā))試題及答案
- 深度解析(2026)《HGT 5145-2017甲醇制混合芳烴》
- 道路交通反違章培訓課件
- 2025年度麻醉科主任述職報告
- Scratch講座課件教學課件
- 2025年度安全生產工作述職報告
- 2025年全國碩士研究生考試《管理類聯(lián)考綜合能力》試題及答案
- 護理質量管理質控方案2026
- 《低碳醫(yī)院評價指南》(T-SHWSHQ 14-2025)
評論
0/150
提交評論