我有一个问题:我怎样才能看到c ++中内存地址X的数字值是什么 我想做一些像:
mov bx, 1024d
mov ax, [bx]
来自装配,其中ax将是我的结果。
感谢您的支持 附:我刚开始使用指针和内存地址
答案 0 :(得分:6)
在C ++中,该地址的值为*reinterpret_cast<uint16_t*>(1024)
。
答案 1 :(得分:2)
地址存储为指针,因此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 ++方式