一、MASM汇编器中的数据类型
二、Intel汇编中的立即数类型
三、定义有符号和无符号整数
四、小端序
内存中数据按照字节存储,一个4个字节无符号整数,其高位存储在低地址上,低位存储在高地址上。
比如0x12345678这个整数,在内存中按照内存地址从小往大排列是:0X78 0x56 0x34 0x12
五、汇编代码验证
INCLUDE Irvine32.inc includelib Irvine32.lib includelib kernel32.lib includelib user32.lib .code ;无符号类型 var1 DWORD 12345678h ;有符号类型 var2 SDWORD 12345678h main PROC mov eax,0 mov ebx,offset var1 mov ecx,[ebx] call DumpRegs mov ax, [ebx] call DumpRegs exit main ENDP END main
汇编代码读取var1地址处开始的两个字节,将其当成一个16位的整数,读取到的字节是0x7856
程序运行结果: