《IBM-PC汇编语言程序设计31》.ppt 48页

  • 2
  • 0
  • 0
  • 约1.25万字
  • 2016-09-16 发布
文档工具:
    1. 1、本文档共48页,可阅读全部内容。
    2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
    3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
    4. 文档侵权举报电话:19940600175。
    第3章 80x86的指令系统和寻址方式 * 4. 寄存器间接寻址方式* ——EA在基址寄存器(BX/BP) 或变址寄存器(SI/DI)中 BX, SI, DI ? (DS) 物理地址 = 16d ? (DS) + BP ? (SS) 物理地址 = 16d ? (SS) + (BP) MOV AX, [BX] PA = 16d ? (DS) + (BX) MOV AX, ES:[BX] PA = 16d ? (ES) + (BX) MOV AX, [BP] PA = 16d ? (SS) + (BP) (BX) (SI) (DI) 第3章 80x86的指令系统和寻址方式 * 4. 寄存器间接寻址方式* * 不允许使用AX、CX、DX存放EA ? MOV AX, [CX] * SRC 和 DST的字长一致 MOV DL, [BX] ; [BX]指示一个字节单元 MOV DX, [BX] ; [BX]指示一个字单元 * 适于数组、字符串、表格的处理 第3章 80x86的指令系统和寻址方式 * 5. 寄存器相对寻址方式(直接变址寻址)* 例: MOV AX, COUNT[SI] 或 MOV AX, [COUNT+SI] 假设(DS)=3000H, (SI)=2000H, COUNT=3000H 那么 PA = 35000H 假设(35000H)=1234H, 那么 (AX)=1234H * 适于数组、字符串、表格的处理 有效地址 = (BX) (BP) (SI) (DI) + 8位 16位 位移量 第3章 80x86的指令系统和寻址方式 * 6. 基址变址寻址方式* MOV AX, [BX][DI] 或 MOV AX, [BX+DI] MOV AX, ES:[BX][SI] * 适于数组、字符串、表格的处理 * 必须是一个基址寄存器和一个变址寄存器的组合 ? MOV AX, [BX][BP] ? MOV AX, [SI][DI] 有效地址 = (BX) (BP) + (SI) (DI) 第3章 80x86的指令系统和寻址方式 * 7. 相对基址变址寻址方式* MOV AX, MASK[BX][SI] 或 MOV AX, MASK[BX+SI] 或 MOV AX, [MASK+BX+SI] * 适于堆栈处理和二维数组处理 有效地址 = (BX) (BP) + (SI) (DI) + 8位 16位 位移量 第3章 80x86的指令系统和寻址方式 * 例:编写一段显示字符串STRING的程序 DATA SEGMENT STRING DB ‘HAPPY NEW YEAR!’, 0DH , 0AH , ‘$’ COUNT DW 17 DATA ENDS (1)直接寻址 mov dl, string ; mov dl, ‘H’ mov ah, 2 int 21h ; 显示字符‘

    文档评论(0)

    • 内容提供方:ghfa
    • 审核时间:2016-09-16
    • 审核编号:8127042066000033

    相关文档

    相关课程推荐