日本語プログラミング言語なでしこの公式掲示板

なでしこ1 質問

トップ 新規 検索

2022-07-05 22:23:26

Re②:うまくいきました

ぎたろん さん

TKIさま
うまくいきました。😄
ていねいにわかりやすく教えていただきありがとうございます。
特に「+0すると数値(44)になる」は目から鱗です。
画像にテキストを埋め込もうといろいろ試行錯誤をしているのですが、
わからないことだらけで壁にぶち当たっています。
バイナリ設定のところは形式など書式がわからず苦労していましたが
一つ大きな壁をクリアできました。
本当に助かります。ありがとうございました。


・バイナリ設定は数値を書き込みする件

うまくいく例にある、
$2CをSの5に「WORD」でバイナリ設定

この$2Cは文字列ではなく数値です。

$2Cを表示
を実行すると「44」が表示されます

$2CをSの5に「WORD」でバイナリ設定
は、
44をSの5に「WORD」でバイナリ設定
と全く同じです。

それを踏まえて……

右 = 「$2C」

これは文字列です。

右 = 「$2C」+0

+0すると数値(44)になります

数値にしてからバイナリ設定するとうまくいくはずです。

~~

・書き込みバイト数を考える件

「WORD」は2バイト書き込みしますから、1バイト書き込むときは「BYTE」を指定するとよさそうです。

$2CをSの5に「WORD」でバイナリ設定 → 2C 00 を書き込み
$2CをSの5に「BYTE」でバイナリ設定 → 2C を書き込み

ちなみに「DWORD」と「INT」は4バイトらしい。

~~

・逆にする意味を考える件

左右を自力で入れ替えると取り出しの時にも頑張りが必要そう。
左右逆(ビッグエンディアン?)にする意味があまりないかもしれません。
そのままバイト数をバイナリ設定すれば、バイナリ取得でバイト数になるので簡単です。

//例
Sに15を確保
P=300 //バイト数
PをSの4に「WORD」でバイナリ設定
Sをバイナリダンプして表示 // 00 00 00 2C 01

Sの4を「WORD」でバイナリ取得
それを表示 //→ 300



(編集パスワード送信)

子記事

親記事 (No.1388)
返信した記事(元) (No.1389)

この内容(No.1390)に返信

この内容(No.1390)をダウンロード

この内容(No.1390)のテキスト表示





www.eznavi.net