ホームページ >よくある問題 >10 進数から符号なし 2 進数へ

10 進数から符号なし 2 進数へ

尚
オリジナル
2019-06-11 14:16:1821758ブラウズ

10 進数から符号なし 2 進数へ

10 進数を符号なし 2 進数に変換します:

(符号なし 2 進整数は負の 10 進数を表すことはできません)。

1. 整数部:

「2で割って余りをとり、逆順に並べる」という方法を採用します。 10 進整数を 2 で割って商と余りを取得します。次に、商を 2 で割って商と余りを取得します。これは、商が 1 未満になるまで続き、その後、最初に取得した余りが下限値として有効になります。 2進数の次数ビットを1ビットずつ取り、その余りを2進数の上位ビットとして順番に並べる。

例:

255=(11111111)B
255/2=127余1
127/2=63余1
63/2=31余1
31/2=15余1
15/2=7余1
7/2=3余1
3/2=1余1
1/2=0余1

逆の順序は 11111111 です。

2. 小数部分:

「2 を乗算して四捨五入する」方法を使用します。つまり、小数部分を 2 で乗算し、整数部分を取得します。残りの小数部を続けます。 2 を掛けてから整数部を取り、小数部がゼロになるまで残りの小数部に 2 を掛けます。

例: 0.125 をバイナリに変換すると、結果は次のようになります: 0.125 をバイナリ (0.001) に変換 2.

0.125*2=0.25
0.25*2=0.5
0.5*2=1.0

全員が 0.125=(0.001)2 に丸めます

符号付き数値と符号なし数値:

符号付き数値: 最上位ビットは数値ではなく記号を表します。最上位ビットは 1 (数値が負であることを意味します)、最上位ビットは 0 (数値が正であることを意味します) です。符号付き数値は、正または負の数値を表すことができます。

符号なし数値: 正の数値のみを表すことができます。

関連する推奨事項:10 進数の 60 を符号なし 2 進数に変換する

以上が10 進数から符号なし 2 進数への詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。