Depois de obter meu Raspberry Pi, decidi que queria aprender a escrever código de montagem ARM. Minha pergunta é: o que eu preciso para começar? Presumo que já exista um compilador instalado, mas não sei o que é (gcc talvez?). Qualquer ajuda é apreciada!
20
Respostas:
Depende de quanto o montador você deseja escrever. Se você deseja escrever apenas pequenos trechos incorporados no código C,
gcc
é realmente o que você está procurando. Exemplos de como usar aasm
diretiva em C, consulte a referência inline asm em: ARM GCC Inline Assembler CookbookSe, por outro lado, você quiser escrever mais do que apenas pequenos trechos, será melhor usar um montador completo. Este estará disponível como qualquer
as
,gas
ou ambas (alias).E, finalmente, você precisará aprender um pouco sobre o conjunto de instruções do ARM. Há uma referência útil no: Manual de referência técnica do ARM1176JZF-S .
NB Lembre-se de que o RPi suporta apenas instruções armv6 - portanto, não tente usar nada do armv7
Boa sorte!! :)
fonte
Comecei minha aventura com o código de montagem do ARM há pouco tempo e aqui estão meus recursos:
fonte
Embora eu esteja bastante confortável com a interface da linha de comando, não pude resistir à conveniência da GUI. Há um tempo, descobri que podia usar o CodeBlocks IDE para desenvolver programas de linguagem assembly ARM em um Raspberry Pi. Então, escrevi um tutorial e o anexei ao tutorial de programação de montagem do Raspberry Pi que escrevi para o site do livro Mazidi ARM Assembly:
http://www.microdigitaled.com/ARM/ARM_ASM_books.htm
No site, clique no link "ARM Assembly Programming Using Raspberry Pi GUI".
Espero que isto ajude.
fonte
O GCC é instalado por padrão. Se você é novo no Raspberry Pi, recomendo que você procure uma linguagem de programação mais fácil do que o assembly ARM. Como não existem IDEs para montagem, você precisará usar um editor de texto e montá-lo através do terminal. Eu recomendo o Gedit pela facilidade de uso. Entretanto, para obter o destaque da sintaxe para montagem, tive que ir ao github, especificamente na página de shinyquagsire23. É muito linda. Quanto à ajuda O melhor recurso que encontrei é "Raspberry Pi Assembly Language: Raspbian Beginners", de Bruce Smith. Você pode encontrá-lo na Amazon. Ele explica a montagem de uma das maneiras mais claras e simples que encontrei.
fonte
Aprenda com exemplos executáveis
Estou trabalhando em: https://github.com/cirosantilli/arm-assembly-cheat
Recursos:
printf
ememcpy
fonte