Я хотел бы загрузить адрес второго значения ниже в регистр.
Вот мой код в синтаксисе Unix:
.data
Lz7:
.long 24
.long 34
.long 80
.long 108
.long 101
.long 97
.long 115
.long 101
.long 32
.long 105
.long 110
...etc...
Я пытаюсь использовать этот код:
movl Lz7, %eax /* %g14 */
movl $4, %ebx /* %g15 */
addl %ebx /* %g15 */ , %eax /* %g16 */
Но gcc жалуется на ошибку шины во время выполнения. В GDB я вижу, что GCC переводит метку Lz7
в шестнадцатеричное значение 0x2068, которое кажется слишком маленьким Я также пробовал 4 (Lz7), но GCC жалуется. Как определить местоположение ошибки шины в программе? Если этот код неверен, что я должен написать вместо этого?