首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

匯編語言定址模式練習:立即、暫存器間接、暫存器相對定址識別

     編輯:程式設計綜合問答

練習題:識別指令操作數的定址模式。本文提供標準答案與判斷邏輯。

題目圖片內容 (文字描述)


MOV AX, 1234H      ; (1)
MOV AX, [BX]       ; (2)
MOV AX, 10H[SI]    ; (3)

標準答案

  1. 立即定址 — 操作數直接包含在指令中 (1234H)。
  2. 暫存器間接定址 — 操作數在記憶體,位址存放在暫存器 BX 中 ([BX])。
  3. 暫存器相對定址 — 操作數在記憶體,位址 = 基址暫存器 SI + 位移量 10H (10H[SI] 或 [SI+10H])。

8086 常見定址模式速查表

模式語法範例有效位址計算 (EA)說明
立即MOV AX, 5—資料在指令碼中
暫存器MOV AX, BX—資料在暫存器
直接MOV AX, [1234H]EA = 1234H位址直接給定
暫存器間接MOV AX, [BX]EA = BX位址在 BX/BP/SI/DI
暫存器相對MOV AX, 10H[SI]EA = SI + 10H位址 = 暫存器 + 位移
基址加變址MOV AX, [BX][SI]EA = BX + SI兩暫存器相加
相對基址加變址MOV AX, 10H[BX][SI]EA = BX + SI + 10H兩暫存器 + 位移

判斷口訣

「括號裡有加減是相對,只有暫存器是間接,直接給數是直接,無括號立即數。」

實體位址計算 (實模式)

物理位址 = (段暫存器 << 4) + 有效位址(EA)
; 例:DS=2000H, [BX] BX=0100H → 物理位址 = 20000H + 0100H = 20100H

熟記七大定址模式語法與 EA 計算,匯編語言考試定址題穩拿滿分。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved