Linux 之 AT&T汇编语言 mov、add、sub指令、数据段

mov指令的几种形式:

mov 寄存器、 数据
mov ax,8888

mov 寄存器、 寄存器
mov bx,ax

mov 寄存器、 内存单元
mov ax,[0]

mov 内存单元、寄存器
mov [0],ax

mov 段寄存器、寄存器
mov ds,ax

add和sub指令和mov一样,都有2个操作对象。

sub和add类似,不过是相减,
sub ax,9 给ax减9,之后的结果赋值给ax
sub ax,bx 语意是ax = bx - ax
sub ax,[0] 将偏移地址为0的内存单元 - ax 再赋值给ax

试一下:能不能用他们直接操作段地址? (试过了,不行)

3.5 数据段
前面讲过,对于8086 PC机,我们可以根据需要将一组内存单元定义为一个段(可以是代码段,数据段等)

如何访问内存中的数据段呢?
将一段内存当作数据段,是我们在编程时的一种安排,我们可以在具体操作的时候,
用DS存放数据段的段地址,再根据需要,用相关指令访问数据段中的具体单元

mov ax,123BH
给AX寄存器里放123BH
mov ds,ax
将123BH送入DS中,作为数据段的段地址。
mov ax,0
用AX存放累加结果

add ax,[0]
将数据段的第一个字,(偏移地址为0),加到AX中,会

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值