• 締切済み

10進のマイナスの計算について

10進のマイナスを2進にする方法 10進のマイナスで少数のものを2進にする方法 を教えてください 方法にも減算、加算、除算、乗算とありますが 一番分かりやすいものをお願いします いろいろと調べているのですが どうしてもわかりません 例をだしていただけるとありがたいです 

  • gdasd
  • お礼率15% (21/135)

みんなの回答

  • Ishiwara
  • ベストアンサー率24% (462/1914)
回答No.5

ご質問が不完全です。 数学上で2進法を扱う問題なのか、それとも、ビット数が有限個のレジスターで負の数を扱うときの一般的なルールを尋ねているのか、明確にしてください。後者の中も、整数と実数(浮動小数点表示)の場合に分かれます。

回答No.4

   頭に - をつけるだけ。 1.5(10) -> 1.1(2) -1.5(10) -> -1.1(2)

回答No.3

マイナスの10進数(整数)を2進数にする方法は、すでに回答されていますね。 小数については、固定小数点で表す場合と浮動小数点で表す場合で異なります。 ・固定小数点 例えば、8ビットの2の補数表現で上位4ビットを整数、下位4ビットを小数と した場合、各ビットの重みは上位ビットから 2^3, 2^2, 2^1, 2^0, 2^(-1), 2^(-2), 2^(-3), 2^(-4) となります。(x^y は x の y 乗を意味します。) つまり、例えば5ビット目には(×0.5)するわけです。 ・浮動小数点 さまざまな表し方があります。通常のフォーマットは最上位ビットが符号 (+/-)、中間ビットが仮数部、下位ビットが指数部になります。IEEEで定め たものが一般的かもしれません。Webで「浮動小数点 IEEE」で検索すれば 見つかるはずです。

  • Hihaku
  • ベストアンサー率0% (0/0)
回答No.2

マイナスの値を2進数で表現する場合、2の補数が使われることがほとんどです。 2の補数には、 (1)全ビットを反転する (2)1を加算する という方法ですることができます。 10進数の-5を2進数に変換するとすると、 (1)10進数の5を2進数に変換→101 (2)ビット反転→010 (3)1を加算→011 となるわけです。 また、小数の場合はあまり自信がないのですが、おそらく同じやり方でできるのではないかと思います。

  • TinyPine
  • ベストアンサー率30% (719/2386)
回答No.1

2進数のマイナスは通常2の補数を使用します。 わたしがかくより、こちらをどうぞ http://wpedia.search.goo.ne.jp/search/2%A4%CE%CA%E4%BF%F4/detail.html?from=websearch

関連するQ&A

  • 情報処理の質問です

    加算演算のみで、減算・乗算・除算する方法を詳しく説明するとしたら、どのように答えますか? よろしくお願いします。

  • コンピュータにおける負数について

     次の問題を教えてください! 「コンピュータで負数を表すのに補数を用いている理由として正しいのはどれか??」 (1)加算を減算で処理することができる。 (2)減算を加算で処理することができる。 (3)乗算を加算とけたシフトで処理することができる。 (4)除算を減算とけたシフトで処理することができる。  どなたかお詳しい方,簡単で結構ですので理由も添えて お教えください。  ちなみに負数は「マイナス」ですよね?では,補数って何ですか??これも教えて下さい。  宜しくお願い致します。

  • このたし算を子供に簡単に計算できるよう説明したい

    540+550+560……+1060=????? という問題です。 540から10刻みの数字を、1060まで足した合計はいくつでしょう?という問題の解き方、考え方を、小学生(乗算、除算、加算。減算できます)でもわかるように説明したいです。 インド式(?)のように、なるほど!とわかやりやすい説明の仕方はありませんでしょうか? 各数字を並べた時、端同士を足せば1600になり、その数をペアの数だけかければ計算しやすいかなと思ったのですが、どうすれば、より早く分かりやすく計算できる説明ができるでしょうか?

  • 16ビットCPUで32ビットの計算方法

    16ビットのCPUを持つシーケンサ(PLC )で32ビットの四則演算(加算、減算、乗算、除算)をさせたいのですが、命令語にダブルワードを処理できるものがないので、演算がオーバーフローした情報から何かしら自分でプログラムを組まなければなりません。 16ビットのレジスタを使った32ビット演算の考え方を教えてください。

  • mod255の計算

    こんにちは。 今日はmod255の計算について困ったことがあり、質問しました。 私は今、mod255の計算をする回路を作っています。 mod255とはある値を255で割ったときの余りを求めることですよね。 しかし、回路ではあまり除算(回路の性質上、逆数を取って乗算する)を使いません。 理由は、計算に時間がかかることと、回路規模がが大きくなるため。 ある値が255以上か判定してから順次255を引くことも考えましたが、動作が不規則なため使っていません。 そこで、私はmod255を除算を使わず、減算で実現しようと次のような計算法を考えました。 例、239+157をmod255する場合。 239+157=396を2進数に変換すると 11101111 +10011101 ------------ 110001100 ここで、計算結果の右から9番目の1を一番右に移動して加算すると 10001101になります。 これを10進に変換すると141になります。 よって、396-255=141となり396をmod255ができていますよね。 これで、問題解決だと思ったのですが、 ある値が511でこの計算をすると結果が10000000となり 256になってしまいます。 このことから考えて、この計算法は万能ではないみたいです。 この計算法のどこを改善するとmod255を計算できるようになるのでしょうか? また、皆さんなら、どんな方法でmod255を実現しますか? よろしく、お願いします。

  • 基本情報技術者過去問

    1)負数を2の補数で表す8ビットの数値がある。この値を10進数で表現すると-100である。この値を符号なしの数値として解釈すると、10進数で幾らか? ア)28 イ)100 ウ)156 エ)228 2) 多くのコンピュータが、演算回路を簡単にするために補数を用いている理由はどれですか。 ア)加算を減算で処理できる イ)減算を加算で処理できる ウ)乗算を加算の組み合わせで処理できる エ)除算を減算の組み合わせで処理できる

  • Javascriptで算術演算子を作っているのですがわかりません・・・

    あの、JavaScriptの課題で、算術演算子つくり、加算、減算、乗算、除算、整数の除算の商と余りが求めれるように、a bにそれぞれ数値を代入して計算開始というのを作りました。それで、数値以外のたとえば、アルファベットなどを代入した場合、それは数値ではありません、数値を代入してくださいというような数値の入力を促すようになるようにしたいのですが、エラーばかりでます。どのようにソースを打ったら良いのかさっぱりわかりません。教えてください!!よろしくおねがいします。

  • 加算と減算で乗算と除算を表現したい

    C言語の勉強をしている者です。 現在、Cを使って簡易電卓を作ろうと取り組んでいる最中なのですが、 テキストの中で乗算と除算を「*」、「/」を使わずに表現しろとの記載がありました。 乗算はループで加算を繰り返すことで理解できているのですが、除算の方法について浮かびません。 どうぞ知恵をお貸しください。

  • なぜ?コンパイルできないのでしょうか?

    タイトルのとおりなんですが、よろしくお願いします。 (-人-) public class Calc1 { public static void main (String[] args) { System.out.println("加算の結果は"+(3+2)+"です。");     System.out.println("減算の結果は"+(5-8)+"です。"); System.out.println("乗算の結果は"+(3*4)+"です。"); System.out.println("除算の結果は"+(7/3)+"です。");  } }

    • ベストアンサー
    • Java
  • 加算回路・乗算回路・除算回路について教えてください<(_ _)>

    四則演算回路実習装置(加算回路・乗算回路・除算回路)について質問です。 1.加算回路において、「A」加算器入力とADD加算器出力の結線は何のために行うのでしょうか? 2.乗算回路において、Mレジスタ入力とADD加算器入力の結線は何のために行うのでしょうか? 3.除算回路において、「A」累算器入力とMレジスタ出力の結線は何のために行うのでしょうか? この3つがわかりません((+_+)) 詳しい方がいましたら回答よろしくお願いいたします<m(__)m>