IT
高中
已解決

10進数(大きい)→2進数(小さい)は2で割っていくのに対して
16進数(大きい)→10進数(小さい)はなぜ16で割らずに2進数から10進数にするような計算をするのですか?
覚えた方が早いですかね?

解答

✨ 最佳解答 ✨

数あるN進数の中でも、16進数は情報の2進数の世界では特別だからです。
何が特別かといえば、2の累乗の形をしているので、
計算の手法として、シフト演算というものが適用できるからです。

具体的には、16進数でBA62という数値を10進数に直す計算を行うと、
通常、16^3*11+16^2*10+16^1*6+2=47714となるのですが、

シフト演算の場合、BA62を4桁ずつの2進数に直すと、
1011 1010 0110 0010となります。
これは、4桁ずつの数字の羅列に見えるかもしれませんが、
実は、全体を結合して1つの2進数としても扱う事ができます。
おそらく、この形のほうが、計算上、簡単なんだと思います。
計算すると、47714となれば正解です。

これは、情報科目でよく出てくるN進数の計算問題と、同時に、
計算処理向けのCとかアセンブラ言語などで覚えておくと有利です。

Σ

ありがとうございます🙇🏻‍♀️՞

留言
您的問題解決了嗎?