我似乎无法找到答案,而且它真的开始让我烦恼。 这只是因为十六进制值由4位组成? (假设第二个操作数是一个整数,否则 - 如果我不正确则指出)
mov ebx,0x00 ; why not ebx,0?
mov eax,0x01 ; why not ebx,1?
上面似乎对系统调用sys_exit(0)
时都有效,因此我混淆了为什么使用十六进制,如果它更容易以另一种方式执行。
答案 0 :(得分:3)
使用任何对给定上下文有意义的基础是一种好习惯。你在ASM中所做的大部分工作都是处理寄存器,存储器地址等,它们通常用十六进制表示。花更多时间在装配上,看看你是否仍然认为10号基地“更容易”。