C语言的指针相当于汇编语言的什么指令?
时间:2010-12-31
来源:互联网
---
作者: GGGFFGGG 发布时间: 2010-12-31
没有与C语言指针对应的指令。
楼主可以写一个指针,再反汇编回来看看。
楼主可以写一个指针,再反汇编回来看看。
作者: ydfivy 发布时间: 2010-12-31
C++ 指针操作是没有对应的单一们汇编指令,它是由一串指令来实现的,如:
int *p,i;
那么 p=&i;
的汇编指令可能是
lea eax,[i_address]
mov dword ptr[p_address],eax
int *p,i;
那么 p=&i;
的汇编指令可能是
lea eax,[i_address]
mov dword ptr[p_address],eax
作者: Michael_g 发布时间: 2010-12-31
引用 2 楼 michael_g 的回复:
C++ 指针操作是没有对应的单一们汇编指令,它是由一串指令来实现的,如:
int *p,i;
那么 p=&i;
的汇编指令可能是
lea eax,[i_address]
mov dword ptr[p_address],eax
C++ 指针操作是没有对应的单一们汇编指令,它是由一串指令来实现的,如:
int *p,i;
那么 p=&i;
的汇编指令可能是
lea eax,[i_address]
mov dword ptr[p_address],eax
多级指针的汇编指令怎样?
作者: GGGFFGGG 发布时间: 2010-12-31
实际上指针就是保存着存储的地址(或仅指偏移地址)。
int *p,i,x;
应该相当于
p dw ? (或dd ?)
i dw ?
x dw ?
p=&i;
相当于
mov p,offset i
(或mov p,offset i
mov p+2,seg i
)
而
x=*p;
相当于
mov bx,p
mov x,[bx] (以下这两句只为说明结果,不去考虑语法)
(或
mov es,p+2
mov x,es:[bx]
)
int *p,i,x;
应该相当于
p dw ? (或dd ?)
i dw ?
x dw ?
p=&i;
相当于
mov p,offset i
(或mov p,offset i
mov p+2,seg i
)
而
x=*p;
相当于
mov bx,p
mov x,[bx] (以下这两句只为说明结果,不去考虑语法)
(或
mov es,p+2
mov x,es:[bx]
)
作者: shzhfu 发布时间: 2010-12-31
可否例举个C语言多级指针的汇编指令例子?
作者: GGGFFGGG 发布时间: 2010-12-31
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28