获取内存地址X的值

时间:2013-11-07 20:40:02

标签: c++ pointers assembly x86

我有一个问题:我怎样才能看到c ++中内存地址X的数字值是什么 我想做一些像:

mov bx, 1024d
mov ax, [bx]

来自装配,其中ax将是我的结果。

感谢您的支持 附:我刚开始使用指针和内存地址

2 个答案:

答案 0 :(得分:6)

在C ++中,该地址的值为*reinterpret_cast<uint16_t*>(1024)

答案 1 :(得分:2)

c / c ++中的

地址存储为指针,因此c ++中代码中的BX将为

unsigned short* _mybx = (unsigned short*)1024U; // note casting to unsigned short*

获取存储在您需要使用的地址上的值:

unsigned short _myax = *_mybx; // note asterix here

而不是c种类型,你可以使用reinterpret_cast

unsigned short* _bx = reinterpret_cast<unsigned short*>(1024);

这是更多c ++方式