こんにちは、avr asm プログラミングの初心者です。以下の例では、いくつか質問があります。
1) ラベルの長さは 8 ビットですか、それとも 16 ビットですか?
2) なぜ 2 の乗算ラベルが必要なのですか?
3) 命令 LPM は結果をレジスタ R0 に配置していますか? もしそうなら、それはZと何の関係がありますか?
4)提供されたリンクから引用されたテキストを説明できますか:
「アドレスが 2 で乗算されず、ラベルがバイト アドレス 0x60 (ワード アドレス 0x30) にある場合、Z はそこに格納されているコードを指します。これでアドレッシングの問題が明確になったことを願っています。他のバージョンは」
ldi ZL, low(2*label)
ldi ZH, high(2*label)
label:
.db "Hello world", 0
lpm
ありがとう。