社区
汇编语言
帖子详情
汇编语言-寄存器指令操作
qq_25297753
2021-01-01 05:25:15
王爽老师的第三版,有一句存放段地址的寄存器可以是显性给出的,
mov ax,ds:[bp] (ax) = ( (ds)*16 + (bp)),bp是间址寻址寄存器,是和SS搭配的,和ds合适吗,请教诸位
...全文
89
3
打赏
收藏
汇编语言-寄存器指令操作
王爽老师的第三版,有一句存放段地址的寄存器可以是显性给出的, mov ax,ds:[bp] (ax) = ( (ds)*16 + (bp)),bp是间址寻址寄存器,是和SS搭配的,和ds合适吗,请教诸位
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zara
2021-01-01
打赏
举报
回复
上面提到 bp 默认是和 ss: 配合的,因为这样可以用来在函数/子程调用时作为基准指针来对栈空间里的参数和局部变量进行访问,所以一般就不作它用了。
qq_25297753
2021-01-01
打赏
举报
回复
感谢回复,文章介绍的BP应用比较少吧,还么有理解到位
zara
2021-01-01
打赏
举报
回复
没有合不合适,只有可不可以。bp 和 ss 搭配,这个是默认状态,但也提供了和其它段搭配的方法,就是段前缀指令如这里的 ds: 是和 ds 搭配,若是要和 es: 或 cs: 搭配就是 mov ax, es:[bp] 或 mov ax, cs:[bp] 了。
汇编语言
--
寄存器
-
指令
集-寻址
3等,它们是通用
寄存器
。还有其他一些专用
寄存器
,如除了以上这些示例外,不同的处理器架构可能有不同的
寄存器
名称和缩写。因此,为了知道具体的
寄存器
名称,建议参考所使用的处理器架构的文档或手册。
汇编基础--
寄存器
与常用
指令
(二)
汇编基础--
寄存器
与常用
指令
(二) 堆栈的使用方式: X86下栈是由高地址向低地址分配的,有专门的汇编
指令
push与pop完成入栈与出栈
操作
。 初始状态,左上黑色的位置是下一条将要执行的
指令
push 1,右下黑色的位置是当前栈指针指向的位置(这是一个动态分析)。 执行完成之后push
指令
将当前栈指针向低地址移动8个字节(64位CPU,32位则是移动4个字节),并且存入数字1。 执行完pop rax之后,栈指针向高地址移动8个字节(同push一致),并且将移动之前..
汇编基础--
寄存器
与常用
指令
汇编基础--
寄存器
与常用
指令
汇编是面向CPU的一种语言,是CPU机器码的人类语言描述。 CPU 运算需要依赖于
寄存器
与内存,其中
寄存器
用于暂时存放CPU在运算中得到的结果,随后在按照需求选择是否放入内存或者继续参与其它的运算。
寄存器
就像是CPU中内置且数量固定的变量,CPU在读写它们的速度是最快的。 CPU
寄存器
也分种类,它们分别做着不同的事情,或者表示着意义不同的数据。 其中有通用
寄存器
,它们普遍的作用就是参与一些加减乘除、位运算、访问内存等。 在32位下它们是 eax,ebx,ecx,e..
汇编语言
-
寄存器
汇编语言
之
寄存器
汇编语言
-- 段
寄存器
DS[Address]初识
汇编语言
-- 段
寄存器
DS[Adress]初识 一、前提 1.
汇编语言
中mov
指令
可以完成两种传送 :1).将数据直接送入
寄存器
中。2).将一个
寄存器
的内容送入到另一个
寄存器
。 2.8086CPU不支持将数据直接放入到段
寄存器
中。 3.执行
指令
时,8086CPU自动获取ds中的数据为内存单元。 4.mov
指令
中的[]说明
操作
对象是一个内存单元。[]中的数表示偏移地址。 5.定位一个内存单元的地址需...
汇编语言
21,459
社区成员
41,601
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章