0
x86組件出現問題(AT & T)。解除引用寄存器地址上的彙編程序段分段錯誤
因爲我需要在彙編程序中實現數組查找,我在寄存器%ebx中有數組的第一項(比如arr [0]),並且爲了指向arr [1],例如我寫了:
mov -4(%ebx), %eax
的問題是,我有一個分段錯誤,當我試圖讓EBX的地址,這是很奇怪的,因爲我可以得到EBX的值沒有問題(改編的[0]值).. 一些建議?編號: 好吧,我想我明白了錯誤。 當我聲明數組我不得不穿上可變ARR的第一個元素的地址:
mov -4(%ecx), %eax
但是與此指令i把值不是地址。 那麼我怎麼能把地址?
你能顯示周圍的代碼嗎?我認爲你誤解了寄存器工作方式。 – DCoder 2012-04-13 08:20:37