寄存器(内存访问)
内存中字的存储#
一个单元存放一个字节,一个字要用两个连续的内存单元来存放。(8086)
DS和[address]#
mov bx,1000H #1000H放入bx
mov ds,bx #1000H放入ds
mov al,[0] #将内存单元里的数据放入al寄存器中,[0]指的是偏移地址,ds中存储的为段地址
字的传送#
8086是16位结构,一次可传16位数据
mov,add,sub指令#
mov#
mov 寄存器,数据
mov 寄存器,寄存器
mov 寄存器,内存单元
mov 内存单元,寄存器
mov 段寄存器,寄存器
mov 寄存器,段寄存器
mov 内存单元,寄存器
mov 内存单元,段寄存器
mov 段寄存器,内存单元
数据段#
将一段内存当作数据段,用ds存放数据段的段地址。
栈#
栈是一种具有特殊的访问方式的存储空间。后进先出
CPU提供的栈机制#
PUSH ax #将ax中的数据送入栈中。
POP ax #将栈中的数据送入寄存器ax中。
以字为单位
段寄存器SS和寄存器SP
栈顶的段地址存放在SS中,偏移地址存放在SP中。
任意时刻,SS:SP执行栈顶元素
进栈时,从高地址向低地址方向增长
栈顶越界的问题#
push和pop指令#
push 寄存器
pop 寄存器
push 段寄存器
pop 段寄存器
push和pop也可以在内存单元和内存单元之间传送数据,
push 内存单元
pop 内存单元
问题3.7
将10000H-1000FH这段空间当作栈,初始状态栈是空的,将ax、bx、ds中的数据入栈。
mov ax,1000H
mov ss,ax
mov sp,0010
push ax
push bx
push ds
前面三条命令设置栈的指针指向10010H,表示栈空状态
栈段#
栈段的最大容量为64kb
作者:sovo
出处:https://www.cnblogs.com/Sovohost-43/p/16051151.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· spring官宣接入deepseek,真的太香了~