《汇编语言》第三章笔记

1. 字单元 : 存放一个字型数据(16位)的内存单元,由两个地址连续的内存单元组成。

               N 字单元 = N 号单元和 N+1 号单元

2. (8086)内存地址由段地址和偏移地址组成。

3. 8086 CPU 中有一 DS 寄存器,即段寄存器,通常用来存放要访问数据的段地址。

4. [...] 表示一个内存单元, 0 表示内存单元的偏移地址。 8086 不支持将数据直接送入段寄存器操作。

1  mov  bx, 1000H
2  mov  ds, bx
3  mov  al, [ 0 ]

 

5. 读数据

1  mov  寄存器名, 内存单元地址         ; 数据从内存单元到寄存器
2  mov  内存单元地址, 寄存器名         ; 数据从寄存器到内存单元

 

将 al 中的数据送入内存单元 10000H

1  mov  bx, 1000H
2  mov  ds, bx
3  mov  [ 0 ], al

 

6. 字传送

1  mov  bx, 1000H
2  mov  ds, bx
3  mov  ax, [ 0 ]
4  mov  [ 0 ], cx

 

7. mov 指令形式

1  mov  寄存器, 数据                      ; mov ax, 8
2  mov  寄存器, 寄存器                    ; mov ax, bx
3  mov  寄存器, 内存单元                  ; mov ax, [0]
4  mov  内存单元, 寄存器                  ; mov [0], ax
5  mov  段寄存器, 寄存器                  ; mov ds, ax

 

8. add 指令形式

1  add  寄存器, 数据                      ; add ax, 8
2  add  寄存器, 寄存器                    ; add ax, bx
3  add  寄存器, 内存单元                  ; add ax, [0]
4  add  内存单元, 寄存器                  ; add [0], ax

 

9. sub 指令形式

1  sub  寄存器, 数据                      ; sub ax, 8
2  sub  寄存器, 寄存器                    ; sub ax, bx
3  sub  寄存器, 内存单元                  ; sub ax, [0]
4  sub  内存单元, 寄存器                  ; sub [0], ax

 

10. 数据段

1  mov  ax, 123BH
2  mov  ds, ax         ; 将 123BH 送入 ds 中,作为数据段的段地址
3  mov  al,  0           ; 用 al 存放累加结果
4  add  al, [ 0 ]        ; 将数据段第一个单元(偏移地址为 0)中的数值加到 al 中
5  add  al, [ 1 ]        ; 将数据段第一个单元(偏移地址为 1)中的数值加到 al 中
6  add  al, [ 2 ]        ; 将数据段第一个单元(偏移地址为 2)中的数值加到 al 中

 

11. 入栈 出栈指令 : PUSH POP

     段寄存器SS, 偏移寄存器SP, 栈顶元素 SS:SP

1  push  段寄存器         ; 将一个段寄存器中的数据入栈
2  pop  段寄存器          ; 出栈,用一个段寄存器接收出栈的数据
3  push  内存单元         ; 将一个内存字单元处的字入栈
4  pop  内存单元          ; 出栈,用一个内存字单元接收出栈的数据

 

 

posted on 2010-01-13 16:41 考巴熊 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/wxjwarren/archive/2010/01/13/1646688.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值