汇编 cmp_汇编复习
第一章
- 計算機組成
五部分:(運算器、控制器)、存儲器、輸入/輸出設備
↑↑ CPU ↑↑ ↑內存↑
三條總線:控制總線、地址總線、數據總線
- 不同進制及BCD碼的轉換
- 特殊ascll
‘0’~‘9’—— 30H ~ 39H
‘A’~‘F’—— 41H ~ 46H
回車 —— 0DH
換行 —— 0AH
- 溢出判斷
第二章
- 16位寄存器
AX、BX、CX、DX
SI、DI
BP、SP
其中AX、BX、CX、DX可分為高位,低位兩個八位寄存器使用
如:
- 32位操作系統工作模式
a. 實模式
b. 保護模式
c. 虛擬86模式
- 實模式的特點
a. 加電復位之后,486工作在實模式下,系統在Dos管理下
b. 只能訪問 1M 內存
c. 存儲管理部件對存儲器只分段,不分頁,每段最大64KB
d. 段寄存器中存放段基址
- 實模式下段寄存器存放相應邏輯段基址
邏輯段 段基址 偏移地址
代碼段 CS IP
堆棧段 SS SP
數據段 DS 根據不同的尋
附加段 ES 址方式,選擇BX/SI/DI
- 物理地址 = 段基址 * 2^4 + 偏移量
- 虛擬地址、線性地址、物理地址
虛擬地址 ——> 分段部件 = 線性地址
線性地址 ——> 分頁部件 = 物理地址
在實模式下,沒有分頁部件,即 線性地址 = 物理地址
第三章
- 指令
指令 = 操作碼 + 操作數
指令格式如下:
標號:操作碼助記符 [TAB] 操作數(多個操作數用 , 隔開) ;注釋
其中,標號表示該條指令的符號地址(邏輯地址),以下劃線或字母開始不超過31個字符
- 標志寄存器
C、A、S、P、Z、O
加減法執行后,最高位產生進位或借位,則C置1,否則置0
2. A(輔助進位/借位)
加法或減法執行后,D3向D4有進位或借位,則A置1,否則置0
3. S(符號寄存器)
S標志記錄結果的最高位的值
4. P(奇偶標志)
根據運算結果低8位中 1 的個數判定,個數為偶數則P置1,奇數則置0(P只關心低8位)
5. Z(全〇標志)
isZero( ) 若全為零則置1
6. O(溢出標志位)
若溢出則置1
- 尋址方式
只能用于源操作數,不能用于目標操作數
常用于賦值
16進制表示時,開頭為 A~F時,需要在開頭加0
2. 寄存器尋址
立即數在寄存器中
3. 直接尋址
形式:
a. 段寄存器:[偏移地址] 如:Mov AX, DS:[45H]
b. 段寄存器:變量名 如:Mov AX, DS:Buf
4. 間接尋址
BP SS
BX SI DI DS
5. 基址尋址
BP SS
BX DS
段寄存器:[基址寄存器 + 位移量]
6. 變址尋址
SI DI DS
段寄存器:[比例因子 * 變址寄存器 + 位移量]
7. 基+變
段寄存器:[基址寄存器 + 比例因子 * 變址寄存器 + 位移量]
- 符號指令和偽指令
- 基本指令集
第四章
- EXE源程序的編程結構
DATA SEGMENT USE16
......
(數據定義)
DATA ENDS
CODE SEGMENT USE16
BEG: ...
... ...
CODE ENDS
END BEG
- 開發過程
a. 編輯程序,設該程序為 a.asm
b. 匯編該程序 masm a.asm(書上為:ml/c a.asm)產生 a.obj文件
c. 鏈接 link a.obj
d. 執行 a.exe
- 部分dos/bios功能
例子: MOV AH, 1
INT 21H
等待從鍵盤輸入一個字符,同時將該字符顯示在顯示器上
入口參數:無
出口參數:AL = 按鍵 ASCLL值
2. 02H
例子:MOV DL, 'A'
MOV AH, 2
INT 21H
在屏幕上顯示一個字符,光標右移一位
入口參數:DL = 顯示字符的ASCLL
出口參數:無
注:會破壞AL寄存器
3. 09H
顯示字符串
入口參數:DS:DX = 字符串首地屏幕上 ,字符串必須'$'結尾
出口參數:無
注:會破壞AL
4. 0AH
等待字符串輸入,保存入緩沖區,同時在屏幕上顯示
入口參數:DS: DX = 輸入數據緩沖區首地址
以回車為標志,緩沖區首單元放置預計可接受字符個數,buf+1格放置實際字符數(不包含回車),符串由buf+2 開始存儲。緩沖區不接受超長字符。
5. 0EH
bios:輸出字符。
MOV AH 0EH
MOV AL ‘A’
INT 10H
總結
以上是生活随笔為你收集整理的汇编 cmp_汇编复习的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 外地建筑公司备案流程(建筑公司备案流程)
- 下一篇: 英雄无敌3安卓中文版下载(英雄无敌3安卓