組立入門


こんにちは!
アセンブリ言語を見てみましょう.アセンブリはバイナリ上の1つのレベルです.アセンブラはアセンブリをバイナリに変換します.次の' Hello World 'コードでは、CPUに含まれて32ビットまで保持できるラズベリーPiのレジスタを使用しています.
これがコードです.
.global _start
_start:

MOV R7, #4 //System call to output to screen
MOV R0, #1 //Set monitor as output stream
MOV R2, #12 //String Length
LDR R1, =message //Load register with address of string
SWI 0 //Software interrupt

end:
MOV R7, #1
SWI 0 //This combined with line above:Software interrupt,
      //saying to return to the terminal

.data //Signify that what follows is data
message:
.ascii "Hello World\n"
MOV R 7、CUNI 4は、レジスタ7に4を入れ、画面上に出力するよう指示する.LDRは「Load」を意味します、そして、内部R 7はストリング「メッセージ」の開始アドレスを保存します.SWIはいわゆるソフトウェア割り込み機能である.
ソフトウェア割込みは、オペレーティングシステムにシグナルを送ります.この割り込み信号を受信すると、レジスタR 0、R 7の値をチェックし、それに応じてHIGHワールドを画面に出力する.このあと、コードの次の行を続け、端末に戻ります.
あなたはまだアセンブリと仕事をしましたか?いい一日をお過ごしください.
ソース