Я беру класс сборки и получается, что я не могу запустить программу Assembly они дали из-за того Windows 95 соответствует ххКомпиляция и запуск сборки ARM thumb-2 в Rasperry pi?
Я бегу Rasperry PI и может легко запустить ассамблею для ARM кода через
http://thinkingeek.com/2013/01/09/arm-assembler-raspberry-pi-chapter-1/
/* -- first.s */
/* This is a comment */
.global main /* 'main' is our entry point and must be global */
.func main /* 'main' is a function */
main: /* This is main */
mov r0, #2 /* Put a 2 inside the register r0 */
bx lr /* Return from main */
$ as -o first.o first.s
$ gcc -o first first.o
$ ./first ; echo $?
2
Но это стандартный ARM 32 бит настройки и необходимо скомпилировать и запустить для установки пальца 2, например:
AREA PrintText, CODE, READONLY
SWI_WriteC EQU &0 ;output character in r0
SWI_Exit EQU &11 ;finish program
ENTRY
BL Print ;call print subroutine
= "Text to print",&0a,&0d,0
ALIGN
SWI SWI_Exit ;finish
Print LDRB r0,[r14], #1 ;get a character
CMP r0, #0 ;end mark NUL?
SWINE SWI_WriteC ;if not, print
BNE Print
ADD r14, r14, #3 ; pass next word boundary
BIC r14, r14, #3 ; round back to boundary
MOV pc, r14 ;return
END
Кто-нибудь знает, что мне нужно в Pi, чтобы запустить этот стиль большого пальца? EDIT:
для команд выше Я попытался добавить -mthumb, но не думаю, что это правильно, так как я не вижу никаких изменений.
в -mthumb -o test.o test.s
малина пи является ARM11 (ARMv6somethingjsomething). Он не поддерживает только thumb-2 extensions. –
Я не уверен, что это просто большой или большой палец-2, мне нужна идея, это всего лишь 16 регистров 1, являющихся ПК. это просто большой палец? – Darxval
Я бы попробовал ответ Севы, если это просто большой палец, это не то, как я это делаю, но кажется правдоподобным ... github.com/dwelch67/raspberrypi Я уверен, что у меня есть примеры большого пальца, если вы хотите использовать .thumb и .thumb_func с помощью инструментов gnu. –