C言語関係掲示板

過去ログ

No.297.Windowsの電卓で16進のマイナスは

[戻る] [ホームページ]

No.1790

16進について
投稿者---さっちゃん(2002/06/24 14:13:21)


16進電卓をつくっているのですが、
Windowsの電卓をつかってみて、わけがわからなくなってしまいました。
-Fって10進に直したら-15ではないんですか???
16進のマイナスの考え方がわからないです。
誰かアドバイス下さい。


No.1791

Re:16進について
投稿者---kikk(2002/06/24 15:33:17)


ども。


>Windowsの電卓をつかってみて、わけがわからなくなってしまいました。
>-Fって10進に直したら-15ではないんですか???
>16進のマイナスの考え方がわからないです。

どうやら、負数を補数で表現しているのが原因のようです。
10進に変換した後、再び16進に戻すとわかると思います(0-Fの結果と同じ)。
また、ヘルプには以下のように書いてありました。

・小数部がある 10 進数を別の表記形式に変換すると、小数部が切り捨てられて整数になります。
・6 進数、8 進数、または 2 進数を 10 進数に変換すると、正の整数になります。

ちょっと遊んでみましたが、2,8,16進の演算は常に整数で、桁数の限界は
QWORD(64ビット)、それ以上は剰余がとられるようです。10進の限界は
かなり高いようです(ほんとの限界はわかりませんが仮数部だけで100ビット
程度はいけるようでした)。

なお、Windows2000で確認しています。


では。

No.1792

Re:16進について
投稿者---さっちゃん(2002/06/24 15:47:38)



>どうやら、負数を補数で表現しているのが原因のようです。
>10進に変換した後、再び16進に戻すとわかると思います(0-Fの結果と同じ)。

FFFFFFF1となっていました。
なるほど・・・。
ありがとうございました