![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
VB6.0
WindowsXP
掲題の件ですが以下のコードを使って16進数を2進数表示にしていますが、最上位ビットに1を立てると値がおかしくなってしまいます。
Private Sub Form_Load()
Dim dat(5) As Variant
Dim i As Variant
dat(0) = Right("0000000000000000" & Hex2Bin(Hex(&HFFFF)), 16)
dat(1) = Right("0000000000000000" & Hex2Bin(Hex(&HFFFE)), 16)
dat(2) = Right("0000000000000000" & Hex2Bin(Hex(&HFF00)), 16)
dat(3) = Right("0000000000000000" & Hex2Bin(Hex(&HF000)), 16)
dat(4) = Right("0000000000000000" & Hex2Bin(Hex(&HF0F0)), 16)
dat(5) = Right("0000000000000000" & Hex2Bin(Hex(&H7FFF)), 16)
For i = 0 To 5
Label1.Caption = Label1.Caption & dat(i) & vbCrLf
Next
Label2.Caption = "FFFF" & vbCrLf & "FFF0" & vbCrLf & "FF00" & vbCrLf & "F000" & vbCrLf & "F0F0"
End Sub
Public Function Hex2Bin(Hex)
Dim Dec
Dec = CInt("&H" + Hex)
Hex2Bin = Dec2Bin(Dec)
End Function
Public Function Bin2Hex(Bin)
Dim Dec
Dec = Bin2Dec(Bin)
Bin2Hex = Hex(Dec)
End Function
Public Function Dec2Bin(ByVal Dec)
Do
Dec2Bin = CStr(Dec Mod 2) & Dec2Bin
Dec = Dec \ 2
Loop Until Dec = 0
End Function
Public Function Bin2Dec(Bin)
Dim i As Integer
For i = 1 To Len(Bin)
Bin2Dec = Bin2Dec * 2 + CInt(Mid(Bin, i, 1))
Next
End Function
なぜこうなってしまうのか、最上位に1を入れても1000000000000
のように表示させるにはどうしたらよいか教えていただきたいです。
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) I2C接続のLCDディスプレイを使う 2 2023/05/01 17:15
- Excel(エクセル) マクロ、条件付き書式のfont.color 1 2023/03/28 01:10
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Excel(エクセル) エクセルで書式設定とフィルタの組み合わせでうまく行かないのですが 4 2022/10/07 10:02
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- その他(プログラミング・Web制作) 質問です 7733を16進にかえると、1E35になると思うのですが、これをbinエディタで入力する時 1 2022/11/28 13:16
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- その他(プログラミング・Web制作) pandasでまとめてインデックスを削除するにはどうすればいいですか? たとえば、以下のプログラムで 1 2022/07/31 23:09
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
サブフォルダに格納されている...
-
IF文、条件分岐の整理方法
-
VBAコードのインデント表示
-
A列に記載されているフォルダ...
-
VB.net(VB)で、フォームにExcel...
-
VBAなくなるの?
-
【ExcelVBA】インデックスが有...
-
vba アクティブシートの名前変...
-
vba 削除
-
エクセルのマクロについて教え...
-
エクセルVBAにて =A1=B1とすれ...
-
VBA 別ブックから条件に合うも...
-
時間短縮のために、テキストフ...
-
ワードVBA どの表か知ることは...
-
エクセルのマクロについて教え...
-
エクセルのVBAコードについて教...
-
VBA指定行削除
-
VBAで大量のファイルをシート名...
-
VBA 別ブックからコピペしたい...
-
配列のペースト出力結果の書式...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
MATLAB(マトラボ)とcsvファ...
-
メールアドレスをテキストファ...
-
matlabで、平均値を求める方法...
-
昇順に整列するプログラムにつ...
-
VBScripの2次元動的配列
-
MSDOSからワイルドカード指定で...
-
VB6.0でMSChartをタイマーを使...
-
dat
-
Perlでファイル名を変更したい...
-
いつどこゲームのようなテキス...
-
VBA エクセルで1列で表示したい。
-
Perlでファイル書き込みの際の...
-
文字型変数を使って2進数表示す...
-
utf-8のコードを使いたい
-
ポインター引数の関数でコンパ...
-
10Mバイトて文字数に すると何...
-
UTF-8で5~6バイトになる文字コ...
-
char str[256]の256の意味は?
-
エクセルシート名の制限を変更...
-
DataGridViewの特定列に入力さ...
おすすめ情報