首页 > 解决方案 > 如何对不同类型的变量进行汇编算术?

问题描述

我正在尝试为我的一项课堂作业做简单的算术运算。我有 4 个变量 A = 38d、B = 0010 1001b、C = A5h 和 D = 85d。我需要执行(ab)+(cd)。我想我已经弄清楚了算术部分,但我对变量转换感到困惑。我使用 DWORD 来存储 4 个变量,但不确定是否需要先将它们转换为十六进制。这是我目前所在的位置,它给了我错误:“未定义的符号 a5h”

 .data
   var1 DWORD  38d
   var2 DWORD  00101001b
 var3 DWORD  A5h
 var4 DWORD  85d
 
 ;result2 DWORD  ?  Not intialized 
 .code
 mov eax, var1   ;move variable 1 in register
 sub eax, var2   ; sub variable 2 from var 1
 mov ebx, var3   ;  move var 3 to register
 sub ebx, var4   ;
 add eax,ebx     ;
 Call WriteInt   
 
 call DumpRegs             ;dump the registers

标签: assemblyx86

解决方案


推荐阅读