- 締切済み
補数の考え方(計算・減算)について
初歩的な質問させていただきます。 10000 - 0110 ------- ※答えはいくつになりますか?
- みんなの回答 (3)
- 専門家の回答
関連するQ&A
- 2の補数の計算について
初歩的な質問ですが、質問させていただきます。 (10000)-(0110)=(1010)となる問題です。 なぜ、(1010)になるのでしょうか?
- ベストアンサー
- 情報処理技術者
- 2の補数の問題
お世話になります。 初歩的な質問で申し訳ございませんが、質問させてください。 ------------------------------------------------------------- 問:負数を2の補数で表現する符号付き16ビットの2進数を16進法で表示したもののうち、4倍するとあふれが生じるものはどれか。 ア 1FFF イ DFFF ウ E000 エ FFFF ------------------------------------------------------------- 答えはイなのですが、イマイチです。 とある解説だと、4倍すると符号が変わるものがあふれとのことでした。 DFFF →(2の補数)0010 0000 0000 0001 →(4倍する)1000 0000 0000 0100 確かに符号が変わることは分かるのですが、ウでも E000 →(2の補数)0010 0000 0000 0000 →(4倍する)1000 0000 0000 0000 こちらも符号が変わることにはならないのでしょうか? どうぞよろしくお願いいたします。
- ベストアンサー
- 情報処理技術者
- 1の補数の2進数での減算(基本的な事だけど)
たとえば(13)10=(01101)2, (8)10=(01000)2 という数値を元に考えてみます。 1の補数なので (-13)10=(10010)2 , (-8)10=(10111)2 となります。 ここで8+(-13)と(-8)+13を求めたいのです。 <8+(-13)> ((01000)2 +(10010)2 ((11010)2 bit反転→ (00101)2 = (5)10 よって (11010)2 = (-5)10 <(-8)+13> (((10111)2 +((01101)2 ((100100)2 bit反転→ (011011)2 = ?? どうして答えが5の2進数表現にならないのでしょうか? 解き方が違うのならば、その理由が知りたいのです。
- ベストアンサー
- 情報処理技術者
- 2の補数を使った計算
ある計算機があり、2の補数を「ビット反転して1を加算する」方法とするときに10進数の計算「100-80」を2の補数を使って計算する場合は16進数で表すと幾つと幾つの加算になるのでしょうか?? 2の補数を使うというのがよくわからないのですが・・・
- ベストアンサー
- その他([技術者向] コンピューター)
- 2に補数
10進数から2進数を2の補数にする時はビット反転して1を足すとできますが、2進数から10進数を2の補数にするときも同じくビット反転して1を足すと正解の答えが出るのですが、そのやり方でいいのでしょうか?
- 締切済み
- ハードウェア・サーバー
- PLSQLの減算について
初歩的な質問をさせてください。 varchar2で定義している以下の内容を減算できますか? するには、どうすれば良いですか? A VARCHAR2(2); B VARCHAR2(2); A := '80'; B := A - 1; 80と言う内容から1を減算したいです。
- ベストアンサー
- その他(プログラミング・開発)
- 2の補数の計算について
C言語のプログラム中で得られた10進数の値を,固定長16ビットの2進数に変換したいと考えています. しかしながら,得られた10進数の値が負数であった場合,それを負数と判断し,2の補数として出力したいのですが,なかなかいい方法が思いつきません… 例えば処理中で -1.915098 といったような10進数の値を2進数に変換し,先頭の1ビットが正負符号の2の補数として表現するためにはどのように記述すればよいでしょうか? 簡単で構いませんので,記述例も書いていただけると助かります…
- ベストアンサー
- C・C++・C#
- 2の補数とオーバーフロー
What is the result of adding the 2's complement number shown below? In each case indicate if an overflow has occurred. (a)11011101 + 11010111 = (b)10111100 + 00111101 = という問題があり、(a)の答えを 10110100 (b)の答えを11111001 としました。これはあっているのでしょうか?問題の意味もいまいちわかりません。
- ベストアンサー
- その他([技術者向] コンピューター)
補足
2進数です。