• ベストアンサー

C言語の四則演算について

Willytの回答

  • Willyt
  • ベストアンサー率25% (2858/11131)
回答No.2

コンピュ-タにはアダーと呼ばれる加算機があるだけなのです。それは引き算は引く数の補数をとれば引き算が足し算になってしまうのです10進3桁の場合で 1-1の計算をやって見ます。 1の補数は999です。すると 1-1 は1+999=10000となりますが、4桁目がないので答えは0になりますね(^_-) 2-1=2+999=1(4桁目をねぐる) になりますね 二進数の場合、補数は1とゼロを反転させるだけで簡単に作ることができますから引き算の回路は要らないということになります。  更に掛け算は足し算の連続、割算は引き算の連続ですから、アダーだけで計算ができてしまうことになります。勿論乗除算は専用の回路を作りますがそれを構成するのはやはり加算回路だけです。

kyocyan
質問者

お礼

Willytさん、ご回答ありがとうございます。 初心者がすべき質問ではない内容でした。 ちょっとまだ理解できないので、勉強の過程でまたお尋ねするかもしれません。その際には宜しくお願いします。

関連するQ&A

  • C言語での複素数の四則演算について

    C言語で、大きさ2の配列を2つ使って、複素数の四則演算のプログラムを作るのですが、配列をどう使うか分からず手が出せない状態です。 C言語を始めたばかりですので、基礎的なことしか分かりませんが、回答お願いします。

  • 四則計算

    四則計算(足し算、引き算、掛け算、割り算) 1・3・9・10で24にする方法を教えてください。

  • C言語の四則演算

    C言語で次のようなプログラムを作りたいのですが ソースを教えていただけないでしょうか? 四則演算のみの計算式を標準入力から受け取り計算式の通りに計算を行い計算式と答えを標準出力に出力する どなたか教えてください

  • C言語で四則演算を使って結果が10になる数式

    C言語のプログラミングについて質問です。 四つの一桁の数字を入力して四則演算を使って結果が10になる数式を作りたいのですが、イメージが湧きません。 教えていただけますか? 例:1234enterkey 答え2*3+1*4 数値の変数はint型でお願いします。int型ですので小数点以下を使って10になる結果は出さなくて宜しいです。お願いします。

  • c言語で四則演算の問題をランダムでだしたいです

    c言語で四則演算の問題をランダムでだしたいです。 学校の課題でだされていて誰か助けてください

  • コンピュータはなぜ減算ができないのか?

    たとえば コンピュータでは2-1を補数を利用して計算します。 しかし、繰り下がりの概念があれば以下のように 直接計算できるはずです。    0010 -) 0001 -----   0001 元々コンピュータには、繰り下がりに対応する演算回路が ないので、引き算が足し算のように簡潔にできない と思ってよいのでしょうか? また、掛け算は足し算のループを利用して計算しているのでしょうか? 割り算は、2の補数(ビット反転+1)の引き算をループさせて実現しているのでしょうか? ということは、計算のうち割り算が一番時間がかかると思ってよいのでしょうか?

  • 二進法での四則演算の方法

    コンピューターは二進法といって"0"と"1"だけの算数をする・・・ と子供に教えたところまではよかったのですが 「どんな風に計算するの?」と聞かれててんぱってしまいしました。 確か、1+1=10、10+1=11, 11+1=100のようにすると思っていましたが 全く自信がありません。足し算、引き算はまだ良いとして 掛け算、割り算はさっぱりわかりません。 親父の威厳を保つため、どなたかわかりやく教えていただけると 助かります。

  • 掛け算・割り算を先に計算する理由

    四則演算の際、 >「掛け算」、「割り算」を先に計算して、後で「足し算」、「引き算」を計算する という計算ルールがあるのですが、なぜそんなルールがあるのでしょうか? 「掛け算」、「割り算」を先に計算するのかっていう理由を説明出来る人は非常に少ないと思われますが、理由を教えてください。 「単位」をそろえる為にあるのでしょうか? よろしくお願いいたします。

  • 高校数学までの範囲で演算というものは何種類ある

    のでしょうか。たとえば、足し算、引き算、掛け算、割り算は同じ一つの演算となるのでしょうか。微分積分は違う種類になるのでしょうか。

  • 化学の四則演算、乗数に困った!!

    大学受験に向けて化学を勉強しているものです。 四則演算に困ったので数学カテで質問しますが、本当は化学の問題です。 どちらの分野にも明るい方からの回答をお待ちしています。 以下解説からの抜粋です。 アボガドロ定数を求める問題です。 アボガドロ定数をNmol^-1とすると、4.090×10^-7molが2.570×10^17個にあたる。 よってその比は 1:N=4.090×10^-7:2.570×10^17 ◆質問 1.Nを求めるには、どうやって計算したらいいのでしょう。 特にマイナスの乗数になっているところがわかりません。 2.Nmol^-1の意味がわかりません。N^-1molとはどう違うのですか? 3.また4.090×2.570の掛け算は、ふつうに3ケタ・3ケタの掛け算をして解いていますがもっと早い方法なんかはありますか?