8086汇编2:补充点基础知识

(1)8086 加电启动的时候,CS为FFFFH,IP为0000H,即启动时CPU从FFFF0H单元中读取指令执行。
(2)要修改CS\IP的值时,必须使用JMP指令。格式为:jmp 段地址:偏移地址。
如果要单独修改IP,则用jmp 某一个合法的寄存器,比如mov IP,AX
(3)8086CPU有4个段寄存器,其中CS是用来存放指令的段地址,IP用于存放指令的偏移地址。任意时刻CPU将CS:IP指向的内容当作指令执行。


我们要读取10000单元的内容,可以用一下程序段进行
mov bx,1000H
mov ds,bx
mov al,[0]


MOV作用:
(1)将数据直接送入寄存器
(2)将一个寄存器的内容存入另外寄存器
(3)强内存单元的内容送入一个寄存器。mov al,[0];中括号表示偏移地址
MOV指令的几种形式:
mov 寄存器,数据
mov 寄存器,寄存器
mov 寄存器,[内存单元]//注意是偏移地址
mov [内存单元],寄存器
mov 段寄存器,寄存器


思考: mov 寄存器,段寄存器  这个指令正确吗?  答案:可以执行






-----------------------------------------------------------
(4)8086不支持将地址送到段寄存器,硬件设计上就是非法的,必须通过通用寄存器再转存到段寄存器。
(5) 注意,读取2个字节时,都是读取低字节(偶地址)
mov ax,[0]//读取1,0
mov ax,[2]//读取3,2
在内存和寄存器之间存送字形数据时,高地址单元和高8位寄存器、低地址与低8位寄存器相对应
-----------------------------------------------------------------------------------------------------
 (6)栈的指令为:push   pop,操作时是以字为单元的
段寄存器SS:保存栈顶段地址
SP:存放栈顶的偏移地址


如果栈为空,则SP指向栈顶的下一个地址



















































































评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值