我设置了我的交叉编译器来制作 MIPS 指令。
它可以很好地编译 C 代码。
但我发现 NOT 操作很奇怪。
如果我像这样编写代码
int a;
func(!a);
我用教科书研究了 MIPS 指令,上面写着“MIPS 将 NOT 操作转换为‘也不为零’”
所以我认为它会转换为
nor a a $zero
但我的编译器转换
xori a a 0x0
sltu a 1
////////////////////////////////我用'myaccount>> mipsel-编译了代码unknown-linux-gnu-gcc -S myfilename.c' 它使 myfilename.s 文件..
我错过了什么?