Y86。长-5从内存发送到寄存器为-1

时间:2014-11-11 18:33:51

标签: y86

在我的代码中,每当我将输入数组中的负数输入到不同的寄存器时,无论负数是多少,该值始终为0xFFFFFFFF。还有其他人遇到过这个问题吗?这是代码:

 
.pos 0x200
.align 4
InputArray: .long -5
            .long -10
Done:       .long 0x0

.pos 0x0
    irmovl InputArray, %eax
    ...
    mrmovl (%eax),%ebx #here is where %ebx gets assigned 0xFFFFFFFF instead of 0xFFFFFFFB

我正在使用yas编译代码并使用ssim进行测试。

1 个答案:

答案 0 :(得分:0)

我的导师告诉我,这是ssim中图形界面的一个常见错误,其中所有负数似乎都是负数1.尽管看起来不对,但这些值实际上是正确的。