負の小数の10進数を符号付きの2進数で表す方法についてお聞きしたいと思います。たとえばバイナリで-0.5となります。負の小数の10進数を2進数に変換する方法
答えて
小数点の左にある数字は、ベースの立上りの累乗で、右の数字は累乗を減らすものです。
ので124.71
がある:バイナリで
10^2 10^1 10^0 10^-1 10^-2
100 + 20 + 4 + 7/10 + 1/100
、それは上昇力が1, 2, 4, 8, ...
いうより1, 10, 100, 1000, ...
ある以外、同じです。
還元力は1/10, 1/100, 1/1000, ...
ではなく1/2, 1/4, 1/8, ...
です。
ので-0.5
は、それだけで1/2
の場所で構成されているので簡単なものであるバイナリに:
-0.1: - means it will be negative.
0 x 2^0(1) = 0
1 x 2^-1(1/2) = 0.5
----
-0.5
より複雑な数字は、個々の場所を加算することにより構築されています。例えば、小数65.625
は次のとおりです。
1 x 2^6 = 64
0 x 2^5
0 x 2^4
0 x 2^3
0 x 2^2
0 x 2^1
1 x 2^0(1) = 1
.
1 x 2^-1 = 0.5
0 x 2^-2
1 x 2^-3 = 0.125
^ ------
| 65.625
|
+-> 1000001.101
ですが、私はバイナリで完全に-.5を表現する方法が不思議でしたが、あなたの数字に負の符号があります。私たちが学校でどのように教えられたかは、数値が負の場合は整数を負にすることです。しかし問題は、整数が0の場合はどのようにして整数を負にすることができるのかということです。 –
@ AbdelrahmanM.MoheyEl-din、記号をどのようにエンコードするかによって決まります。通常(IEEE754エンコーディングの場合など)、ビットの1つを符号を表すために使用します。それがゼロの場合は正とみなされ、一方が負の場合は正の値とみなされます。これは、いくつかの数学的な人々がコンピュータ科学者が数学で信用すべきではないと証明していることを証明していると主張する* 2つのゼロ、正と負の1つの存在につながる:-)詳細はhttp:// stackoverflowで見つけることができる。 com/questions/3448777/how-to-represent-0-1-in-floating-point-arithmetic-and-decimal/3448855#3448855 – paxdiablo
まず、正として負の数を考慮することができます。小数部と小数部を別々に見つけたら、すべてを1から0、0から1にすることで、それを負に変換することができます。最後に、1を追加する必要があります。
たとえば、-5.75を最初にバイナリに変換するには、ポイントの位置と2進数の長さを決定する必要があります。数値の長さを8ビット、小数点以下4ビット、小数点以下4ビットと定義しましょう。
まず(ポジティブ)5.75のバイナリ表現を見つける:
5=0101
0.75=.1100 then
5.75=0101.1100 in 8 bits
、負、手順が標準で変換すべてのビットを反転し、前記仮数の桁に1を追加します。私たちのrepsresentationが正しいかどう
number: 0101.1100
inversion: 1010.0011
addition of 1: 1010.0011 + 0.0001=1010.0100
のは確認してみましょう:
bin(1010.0100) = -8 + 2 + 0.25 = -5.75
ザッツさんすべて。
- 1. 数式を2進数から10進数に変換する
- 2. perl。 64ビットの2進数を10進数に変換する
- 3. マイクロビットで10進数を2進数に変換する
- 4. 10進数から2進数への変換(整数1〜8)
- 5. Rの10進数と16進数の変換方法は?
- 6. Cでの10進数から2進数への変換
- 7. JAVAの2進数から10進数への変換?
- 8. 2進数を8進数に変換する方法は?
- 9. 10進数から2進数への変換
- 10. 10進数から2進数への変換(16ビット)
- 11. 10進数を2進数に変換するC#関数を使用する
- 12. Objective Cで2進数から10進数に変換
- 13. 浮動小数点数を10進数に変換
- 14. スウィフトで16進数を10進数に変換する
- 15. 16進数を10進数に変換するR
- 16. 10進数から16進数に変換するC++プログラム
- 17. スタックを使用して10進数を2進数に変換する
- 18. 配列を使用して10進数から2進数に変換する
- 19. 仮数を効率的に10進数から2進数に変換する方法
- 20. 10進整数を16進数に変換できますか?
- 21. 16進数を10進数に正しく変換します
- 22. 16進数を2進数のiphoneに変換するには
- 23. 小数をパスカルで10進数に変換
- 24. Androidの16進数から10進数への変換
- 25. 10進数から16進数への文字列の変換
- 26. SQLデータベースの16進数値 - 10進数への変換
- 27. 0と1 JAVA 2進数から10進数への変換とめくる
- 28. 16進数から10進数への変換
- 29. 10進数から16進数への変換
- 30. VB.net 10進数から16進数への変換
あなたの答えはありがたいですが - 2^-1 = - 0.5 – Ctx