在汇编中添加两个变量
Add two variables in assembly
我在 Assembler MASM 中有下一个程序,
我对 Assembler MASM
的总和记录有疑问
TITLE Suma variables
INCLUDE Irvine32.inc
.data
a dword 10000h
b dword 40000h
valorFinal dword ?
.code
main PROC
mov eax,a ; empieza con 10000h
add eax,b ; suma 40000h
mov valorFinal,eax ;
call DumpRegs
exit
main ENDP
END main
我的问题是,当我将 add 与 b 一起使用时,我只添加变量的值,或者我是在内存中添加值和地址,因为我知道要获得特定值必须包含在 [ ].
because I understand that to get the particular value must be enclosed in []
在 NASM 语法中你需要括号。
在 MASM/TASM 语法中你不需要,add eax,b
与 add eax,[b]
的含义相同(假设 b
是一个标签而不是 b EQU 42
之类的东西)。
如果你想在 MASM/TASM 语法中将 b
的地址添加到 eax
,你可以这样写:
add eax, offset b
我在 Assembler MASM 中有下一个程序, 我对 Assembler MASM
的总和记录有疑问 TITLE Suma variables
INCLUDE Irvine32.inc
.data
a dword 10000h
b dword 40000h
valorFinal dword ?
.code
main PROC
mov eax,a ; empieza con 10000h
add eax,b ; suma 40000h
mov valorFinal,eax ;
call DumpRegs
exit
main ENDP
END main
我的问题是,当我将 add 与 b 一起使用时,我只添加变量的值,或者我是在内存中添加值和地址,因为我知道要获得特定值必须包含在 [ ].
because I understand that to get the particular value must be enclosed in
[]
在 NASM 语法中你需要括号。
在 MASM/TASM 语法中你不需要,add eax,b
与 add eax,[b]
的含义相同(假设 b
是一个标签而不是 b EQU 42
之类的东西)。
如果你想在 MASM/TASM 语法中将 b
的地址添加到 eax
,你可以这样写:
add eax, offset b