汇编 | 寄存器篇
8086CPU
内存中字的存储:CPU中,用16位寄存器来存储一个字,高8位存放高位字节,低8位存放低位字节。在内存中存储时,由于内存单元是字节单元,一个字要用两个地址连续的内存单元来存放。字的低位字节存在低位地址单元中,字的高位字节存在高位地址单元。
起始地址(低位)为N,则为N地址字单元。
CPU中DS寄存器通常用来存放要访问数据的段地址。
如下几种形式:
mov 寄存器,数据
mov 寄存器,寄存器
mov 寄存器,内存单元
mov 内存单元,寄存器
mov 段寄存器,寄存器
mov 段寄存器,内存单元内存单元的段地址默认是放在DS寄存器中,可用偏移地址进行读取内存单元中的内容。
8086CPU不支持直接将数据直接送入段寄存器中。可用ds存放数据段的段地址。
add 寄存器,数据
add 寄存器,寄存器
add 寄存器,内存单元
add 内存单元,寄存器sub 寄存器,数据
sub 寄存器,寄存器
sub 寄存器,内存单元
sub 内存单元,寄存器允许mov 段寄存器,内存单元,但不允许add/sub 段寄存器,内存单元。
mov、add、sub是具有两个操作对象的对象,jmp是具有一个操作对象的指令。
jmp修改CS:IP值单操作对象。
文章目录
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
世至其美
微信
支付宝