2

我似乎找不到这个问题的答案,这真的开始困扰我了。这仅仅是因为十六进制值由 4 位组成吗?(假设第二个操作数是整数,否则请指出我是否不正确)

mov   ebx,0x00   ; why not ebx,0?
mov   eax,0x01   ; why not ebx,1?

在对 进行系统调用时,上述内容似乎适用于两者sys_exit(0),因此我对为什么使用十六进制感到困惑,如果以另一种方式更容易做到的话。

4

1 回答 1

3

使用对给定上下文有意义的任何基础都是很好的做法。您在 ASM 中所做的大部分工作都是处理寄存器、内存地址等,这些通常以十六进制表示。花更多时间在组装上,看看你是否仍然认为 base 10 “更容易”。

于 2013-04-15T14:53:21.883 回答