Я снова пытаюсь сделать что-то относительно простое в синтаксисе NAS8 x86, но у меня есть ужасное время, чтобы найти что-нибудь об этом в ARM. Я пытаюсь получить длину статического массива, чтобы у меня было что-то, что можно сравнить в цикле.ARM asm equ array length
This прекрасно показывает, что equ является как оператор #define в c, но это все еще не помогает мне найти длину статического массива.
В x86 NASM вы могли бы сделать это:
SECTION .data
brownFox: db "The quick brown fox jumps over the lazy dog!", 10, 0
brownFox_bytes: equ $-brownFox
В ARM я предположил бы, что есть что-то подобное, но я действительно не могу найти ничего об этом. Я пробовал сделать это:
.C.0.1569:
.word 0
.word 1
.word 2
.word 3
.align 2
@ other stuff like .LC0-2 and main
.L4: .align 2
.L3:
.word .LC0
.word .LC1
.word .LC2
.word .C.0.1569
.equ len, $-.L3+16
Но это явно не работает, поскольку это не NASM на x86.
Если это помогает, я использую Qemu, эмулирующую систему ARMv7, на которой работает Debian, связанная с GCC.
ах, ну, я нахожусь в классе сборки, и мы выполнили весь термин в x86 asm, но теперь мы ожидаем, что мы будем изучать ARM asm для последнего задания самостоятельно, и мне трудно понять, что какие. Я использую gcc, поэтому, полагаю, это означает, что я использую gnu suntax. Ссылка была связана с тем, что я не знаю, что делаю, и сказал, что ARM наверху. – dlkulp