PIC24 の C で定義された変数があります。
(Cファイル内の)変数の名前がThe_Number_Of_Bytes
PIC24 の C コードでは、このように定義されています....
unsigned long The_Number_Of_Bytes=0; // number of bytes in buffer
指定されたバイトの配列にバイトDATABUF01
が含まれる場合に呼び出されThe_Number_Of_Bytes
ます (暗黙の冗長性については申し訳ありません)。その数のバイトを正確に処理してから停止する必要があります。
この数は 65535 未満になると確信しているので、なぜ unsigned long なのかは別の議論に委ねます。今のところ、知りたいです。どちらが上位語でどちらが下位語ですか? (long
さらに言えば、PIC24 Cの32ビット数ですか?)
誰かが私に教えてくれませんW2
かW3
?
Mov.W #_The_Number_Of_Bytes, W1 ;From the dispatcher
Mov.W [W1++], W2 ;My question: Hi Order or Low Order ?
Mov.W [W1], W3 ;My question: Hi Order or Low ?
Mov.W #_DATABUF01, W4 ;The Start
Mov.B [W4++], W5 ;First byte...
: ;Whatever
: ;Whatever
: ;Whatever
誰かが unsigned long int の Hi / Low オーダーについての私の考えを確認または修正してもらえますか?
編集コメンターがこれを要求しました。質問に答えるかもしれません(コメントは私のものです)
リクエストコメント、サイズは4バイトのようです、これから...
45: unsigned long i=0;
0AB6A B80060 mul.uu 0x0000,#0,0x0000 ;make a zero
0AB6C 980710 mov.w 0x0000,[0x001c+2] ;no clue which word
0AB6E 980721 mov.w 0x0002,[0x001c+4] ;aha, if I made it 1 or 2, I'd know
46: unsigned int Fischer;
47:
48: Fischer = sizeof(i);
0AB70 200040 mov.w #0x4,0x0000 ;So it must be 4
0AB72 780F00 mov.w 0x0000,[0x001c] ;okay, it's a 4 byte number
49: