VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2003/03/18(Tue) 14:57
投稿者nobu
Eメール
URL
タイトルRe^3: 16進数を10進数へ変換する方法

> できました。ただ、"e6cef25a"が、変換すると、"3872322138"となる
> はずが、"-422645158"と変換されてしまいます。"0d69"は、正常に
> "590808563"となります。頭文字が記号だとダメなのでしょうか?調べ
> てはいるのですが分かりません。

そんなに桁数の多い16進数変換の話は出て来て居ませんでした。
単純に「16進数を10進数へ変換する方法」と。

桁数が多い時には下記のようにして下さい。
実際の処理時にはもっと工夫が必要でしょうが差し当たり
期待値の、「3872322138」は表示されます。
MID関数で分けて配列に入れる。For文で処理する等すれば見やすくなるでしょう。
個々の処理に付いては自分で考えて下さい。
    
    Dim cw As String
    Dim cw1 As String
    Dim cw2 As String
    Dim cw3 As String
    Dim cw4 As String

    Dim cw_val As Double
    Dim cw1_val As Double
    Dim cw2_val As Double
    Dim cw3_val As Double
    Dim cw4_val As Double

    Dim acw1_val As Double
    Dim acw2_val As Double
    Dim acw3_val As Double
    Dim acw4_val As Double

    cw = "E6CEF25A"
    
    cw1 = "E6"
    cw2 = "CE"
    cw3 = "F2"
    cw4 = "5A"
    
     cw1_val = Val("&H" + cw1)
     cw2_val = Val("&H" + cw2)
     cw3_val = Val("&H" + cw3)
     cw4_val = Val("&H" + cw4)
    
      acw1_val = cw1_val * 256 ^ 3
      acw2_val = cw2_val * 256 ^ 2
      acw3_val = cw3_val * 256
      acw4_val = cw4_val
    
   cw_val = acw1_val + acw2_val + acw3_val + acw4_val
    
   Label1.Caption = cw_val


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -