add rd, rs, rt
addu rd, rs, rt
sub rd, rs, rt
subu rd, rs, rt
在MIPS中,有符号加法、无符号加法、有符号减法和无符号减法有何区别?如果它们的结果相同,那么使用有符号和无符号方法有什么意义呢?
add rd, rs, rt
addu rd, rs, rt
sub rd, rs, rt
subu rd, rs, rt
u
只是意味着它们不会在溢出时陷入困境。
< p >引用自“MIPS32 Architecture For Programmers Volume II”:
< blockquote >
指令名称中的“unsigned”一词是一个错误的描述;此操作是32位模算术,不会在溢出时陷入陷阱。此指令适用于无符号算术,例如地址算术,或忽略溢出的整数算术环境,例如C语言算术。