■ 現在のこのページの役立ち度: |
■ このページの役立ち度を評価する:
役立ち度を評価してください。
(1(左):あまり役立たない - 5(右):大変役立った): |
■ ページの共有: |
[ サイト内検索 ]
カスタム検索
|
#147-2モトローラ系とインテル系のバイナリデータ変換の方法匿名1472002-05-14(火) 13:22
#150-2RE#147:モトローラ系とインテル系のバイナリデータ変換の方法ゆう(U)2002-05-14(火) 14:28
#166-2RE#150:モトローラ系とインテル系のバイナリデータ変換の方法匿名1662002-05-15(水) 04:01
#168-2RE#166:モトローラ系とインテル系のバイナリデータ変換の方法せつら2002-05-15(水) 04:45
#172-1RE#168:モトローラ系とインテル系のバイナリデータ変換の方法Say2002-05-15(水) 05:10
#150-2RE#147:モトローラ系とインテル系のバイナリデータ変換の方法ゆう(U)2002-05-14(火) 14:28
#166-2RE#150:モトローラ系とインテル系のバイナリデータ変換の方法匿名1662002-05-15(水) 04:01
#168-2RE#166:モトローラ系とインテル系のバイナリデータ変換の方法せつら2002-05-15(水) 04:45
#172-1RE#168:モトローラ系とインテル系のバイナリデータ変換の方法Say2002-05-15(水) 05:10
匿名1472002-05-14(火) 13:22
モトローラ系とインテル系のバイナリデータ変換の方法を VBで実現させたいのですが、どのようにすればよろしいでしょうか? つまり int 型で 1 のデータを示すバイナリ値(16進) 01 00 のデータを 00 01 と 変換したいのです(上位ビットと下位ビットの交換)。 同様に long 型も 01 02 03 04 とあれば、04 03 02 01 と交換させたいです。 ビットシフトができればすぐにでもできますが、VBでビットシフトはできるのでしょうか? よろしくお願い致します。
ゆう(U)2002-05-14(火) 14:28
> ビットシフトができればすぐにでもできますが、VBでビットシフトはできるのでしょうか? &H1234 を &H3412 にしたいって事ですよね? &H1234 AND &HFF → &H34 &H1234 \ &H100 → &H12 &H34 * &H100 + &H12 → &H3412 こんな感じでOKでは?
匿名1662002-05-15(水) 04:01
お返事ありがとうございます。 > &H1234 AND &HFF → &H34 > &H1234 \ &H100 → &H12 > &H34 * &H100 + &H12 → &H3412 で変換を行うとオーバーフローを起こす場合があります (下位8ビット目が1の時)。 積を行わず byte データの列にするしかなさそうです。
せつら2002-05-15(水) 04:45
下位8ビット目が1って、具体的にいくつの事でしょうか? 上から数えてなのか下からなのか、 0からなのか1からなのか判りませんし、考え方自体は正しいようなのですが。 Private Sub Command1_Click() MsgBox Hex(fIM(&H1234&)) End Sub Function fIM(lw As Long) As Long Dim ll As Long Dim lh As Long ll = lw And &HFF& lh = lw \ &H100& fIM = ll * &H100& Or lh End Function
Say2002-05-15(水) 05:10
> 下位8ビット目が1って、具体的にいくつの事でしょうか? 上から数えてなのか下からなのか、 > 0からなのか1からなのか判りませんし、考え方自体は正しいようなのですが。 符号ビットのことでしょう。最上位ビットとかMSBとかbit7とか言ってくれると わかりやすいのですが・・・。 原則として、掲示板に記載されるコードは「ヒント」ですから、 自分なりに消化する必要があるかと思います。 VBではUnSignedが扱えないわけですから、 「負の数はどうするか?」とか「Longで21億超えたらどうするか?」は 自力で考え、わからなかったら再び質問してみればいいのではないかと。 場合によってはCでDLL作って利用するほうがいいかもしれませんが。
このページと関連する記事:
#2481-1MKS,MKI関数について1999-08-02(月) 21:03#28785-0unsigned型の扱い方2002-05-20(月) 12:53
#816-2データ型について2001-11-01(木) 01:46
#138-0十進数の仕方について1999-07-20(火) 01:01
#6799-0ビット計算2000-03-21(火) 06:00
#9754-0コード変換について2000-04-20(木) 07:21
#28309-0文字列のビット操作2000-08-21(月) 16:08
#4189-2UTF-16をUTF-8に変換する方法2002-01-22(火) 14:01
#41846-0テキストの暗号化について。2001-04-18(水) 07:04
#1551-0複数CheckBoxのコードの書き方で他に方法はないでしょうか1999-09-14(火) 17:22