永发信息网

x86汇编语言的MOV指令

答案:3  悬赏:0  手机版
解决时间 2021-03-23 14:27
  • 提问者网友:
  • 2021-03-22 22:16
x86汇编语言的MOV指令
最佳答案
  • 五星知识达人网友:舍身薄凉客
  • 2021-03-22 23:01
MOV在汇编语言中是 数据传送指令。
用法如下:

mov — Move (Opcodes: 88, 89, 8A, 8B, 8C, 8E, ...)
mov指令将第二个操作数(可以是寄存器的内容、内存中的内容或值)复制到第一个操作数(寄存器或内存)。mov不能用于直接从内存复制到内存,其语法如下所示:
mov ,
mov ,
mov ,
mov ,
mov ,

Examples
mov eax, ebx — 将ebx的值拷贝到eax
mov byte ptr [var], 5 — 将5保存找var指示内存中的一个字节中

全部回答
  • 1楼网友:鸠书
  • 2021-03-22 23:55
加中括弧是间接寻址,把ostcbcur这个指针里的地址指向的内容放到ebx中,esp是堆栈指针寄存器追问你确定是[OSTCBCur]的结果是内容不是地址?追答所以是二次寻址追问我觉得你说的不对,能不能再好好想想再回答我,如果按你的解释,再通过上下文,一点都解释不通。

我觉得[OSTCBCur]应该是OSTCBCur这个指针变量存储的内容也就是结构体地址。这样两句都能解释通了。
  • 2楼网友:逐風
  • 2021-03-22 23:36
1、第一句是将C语言中的指向一个结构体类型的指针变量传送到ebx寄存器中(ebx是CPU中的32位寄存器)
2、第二句是将esp堆栈寄存器(32位)的内容传送到以ebx寄存器为地址的单元里。
即将edp堆栈寄存器的内容传送到C语言中的指向一个结构体类型的指针变量中。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯