汇编语言-第八章总结


  1. 关于数据处理的两个重要问题

    • 要处理的数据在什么地方?
    • 要处理的数据有多长(字节)?
  2. bx, bp, bi, si

    1. 在8086CPU中,只有这四个寄存器可以使用[...]
    2. 这四个寄存器可以单个出现,或者能以四种组合出现:
    [bx+si], [bx+di], [bp+si], [bp+di]
    

其中当使用bx时,段地址默认是ds,使用bp时,段地址默认为ss

  1. 机器指令处理的数据在什么地方

    • 内存单元
    • 寄存器
    • 端口(本文暂不介绍)
    mov ax, [bx]    ;内存单元
    mov ax, bx      ;寄存器
    mov ax, idata   ;指令缓冲期
    
  2. 汇编语言中数据位置的表达

    • 立即数(idata)
    • 寄存器
    • SA:EA
  3. 寻址方式

寻址方式 常用格式举例
[bx], [si], [di], [bp] [bx]
[bx+idata],[bp+idata],[si+idata],[di+idata] 用于结构体: [bx].idata;用于数组: idata[bx];用于二维数组: [bx][idata]
[bx+si],[bx+di],[bp+si],[bp+di] 用于二维数组: [bx][si]
[bx+si+idata], [bx+di+idata], [bp+si+idata], [bp+di+idata] 用于结构体的数组: [bx].idata[si]; 用于二维数组: idata[bx][si]
  1. div指令
    形式如下: div reg 或者 div 内存单元

    • 除数为8位,被除数为16位,则被除数默认在AX
      余数存在AH,商存在AL
    • 除数为16为,被除数为32位,则被除数的高位在DX,低位在AL,
      余数存在DX,商存在AX

    余高,低商

  2. dd、 dup
    dd:用来定义双字型数据, 32位→4字节→2字→1双字
    dup:用来设置数据的重复,形如: 类型 重复的次数 dup (要重复的数据)

你可能感兴趣的:(汇编语言-第八章总结)