汇编语言学习摘要 基础知识和寄存器

注:根据王爽《汇编语言》(第三版)内容,主要防忘记和方便查找

一、基础知识 略


二、寄存器

****8086CPU所有寄存器都是16字节

****AX,BX,CX,DX为通用寄存器,且都可以分为两个独立的8位寄存器独立使用
****AX->AH和AL,BX,CX,DX同理


****字节byte,8位;字word,16位,即2字节

在这里插入图片描述
在这里插入图片描述
注意数字的后缀,没有后缀默认为十进制,后缀为h是16进制,b则为二进制,后缀不区分大小写

8086CPU寻址 :物理地址=段地址16再偏移地址

16进制表示如下
在这里插入图片描述
只有4个段寄存器可用来提供段地址:CS DS SS ES

CS和IP指示了当前要读取指令的地址
即8086机中,任意时刻,CPU将CS:IP指向的内容当做指令执行

修改CS IP不可用mov之类的指令,可用jmp指令


三、内存访问

内存中,一个地址是一个存储单元,一字节

采用小端法存储,即字型数据(word两字节)高位字节存储于高地址单元,地位字节存储于低地址单元。如图从0地址开始存放20000(4E20H)和18(0012H)
在这里插入图片描述
注:地址从0开始增长,因此1相对于0为高地址,后面同理。


DS段寄存器,用来存放要访问数据的段地址

比如下图用来读取10000H单元内容
在这里插入图片描述
注:不能直接将数据送入寄存器,只能通过 mov 段寄存器,寄存器
注:[…]表示一个内存单元


mov合法操作如下:
在这里插入图片描述


任意时刻,SS:SP指向栈顶元素,可以使用pop和push指令实现出栈和入栈操作

push ax
相当于
sp=sp-2
将ax中内容送入ss:sp所指内存处

pop ax
相当于
将ss:sp所指内存处数据送入ax中
sp=sp+2

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值