CHECHE55555 发表于 2020-9-7 18:10:59

32位汇编

本帖最后由 CHECHE55555 于 2020-9-7 18:33 编辑

mov ,5的意思是 把5传送到esp+08这个地址里面的值所指的地址   还是 传送到esp+08这个地址    
      
mov eax,dword ptr 的意思是 把esp+08的地址里面的值所指的地址的值传送到eax还是 esp+08的地址的值传送到eax


mov dword ptr ,eax 的意思是 把eax的值给ecx里的值所指的地址 还是 把eax的值给ecx

mov ecx, 的意思是 把esp里的值所指地址的值给ecx还是 esp里的值给ecx

看书之后 红色文字均是答案要是按照前二个第三,四个绿色文字是不是答案(理解有问题?)

如果答案是eax里的值给了ecx 那么为什么不直接mov ecx,eax要中括号干啥。。。。

还是说在中括号 里面有计算 和 没有计算在内的 不是一样的?

我迷糊了,。。:dizzy:我那边出了问题。。




CHECHE55555 发表于 2020-9-10 18:18:51

我看了一篇文章之后解惑了。 过来自己解答一下自己的问题。

举个例子来解答吧
如 lea ebx , xxxx;(xxxx为一个变量。)取一下这个变量的地址
此时的 就是 ebx中放着xxxx变量的地址 则表示的是地址指向的值
如果是的话 就是 ebx中存放的地址+4h 指向的值

wo519815271 发表于 2020-9-7 20:56:41

后面的对,   内存地址cpu寄存器 自己琢磨{:3_41:}建议学下汇编

nishuhao 发表于 2021-9-30 19:36:25

dword 双字 就是四个字节
ptr pointer缩写 即指针
[]里的数据是一个地址值,这个地址指向一个双字型数据
比如mov eax, dword ptr 把内存地址12345678中的双字型(32位)数据赋给eax
页: [1]
查看完整版本: 32位汇编