タグ

論理演算に関するBowz13のブックマーク (5)

  • 実は足し算しかできない!? 「補数」「シフト」で四則演算しているマイコン

    →「マイコン入門!! 必携用語集」連載一覧 加算(足し算) 最初に最も簡単な加算(足し算)を説明します。 これは10進数と同じ方法で計算します。各桁が加算した後に2になる場合は「桁上がり」が発生し、1桁上の数字に加算します。図1に2進数の[0110]*)と[0011]の加算例を示します。 *)文中では、便宜上、2進数の値を[0]や[1]のように、[ ]で表現します ちなみに、上がった桁のことをキャリー(Carry)と呼びます。逆に上の桁から1を借りてくることをボロウ(Borrow)といいます。よく使いますので覚えておいてください。 減算(引き算) 次に減算(引き算)を説明します。前述したようにマイコンでは直接減算(引き算)を行えません。そこで補数を加えて間接的に減算を行います。 では、補数とは何でしょうか? 補数とは、「その数字に足した時に、桁上がりが起きる数のうち最も小さい数」です。

    実は足し算しかできない!? 「補数」「シフト」で四則演算しているマイコン
  • コンピュータはどのように計算しているのか? - ザリガニが見ていた...。

    コンピュータ(CPU)は単なるスイッチの集合体である。 スイッチのオン・オフを数値の1・0と考えて2進数で計算している。 以上のことは真理かもしれないけど、今イチ現実味がない。そのままでは、CPUの姿は想像できない。単なるスイッチが、その内部でどうやって計算しているのか?もう少し具体的な姿を見るために、調べてみた。 10進数ではない数値 人間が計算すると言ったら、それは当然10進数で計算することになる。 10進数とは、1桁が10の数字によって区別される数値の表現方法である。 0から9まで数えたら、桁上がりして10になる。 ところで、普段はあまり意識しないが、時計は12進数と60進数が組み合わさった数値の表現方法である。 ストップウォッチが付属していると、10進数も関係している。 あるいは、曜日は7進数的な表現方法と言える。(桁上がりは、ないけど) 1年は12ヵ月あり、12進数的である。 さ

    コンピュータはどのように計算しているのか? - ザリガニが見ていた...。
  • 【5分で覚えるIT基礎の基礎】あなたは論理演算がわかりますか? 第3回

    矢沢 久雄 グレープシティ アドバイザリースタッフ 連載の第1回で,コンピュータを構成するICの中に論理演算を行う論理回路が入っていることを説明しました。連載の第2回では,論理演算の用途として,マスク,セット,反転があることを説明しました。ここで疑問に思ってほしいことがあります。それは「どうやらコンピュータは,ハードウエア的に論理演算しかできないようだ。それでも,コンピュータで加減乗除の四則演算ができるのは,なぜだろうか?」ということです。実はコンピュータは,論理演算を組み合せて四則演算を行うのです。今回は,その仕組みを説明しましょう。 ●シンプルな半加算回路 コンピュータは,内部的にすべてのデータを2進数で取り扱います。そこで,2進数で四則演算を行う方法を考えてみましょう。まずは加算からです。2進数の1けた(0または1)で加算を行うと,その結果は表1[拡大表示]のようになります。ここでは

    【5分で覚えるIT基礎の基礎】あなたは論理演算がわかりますか? 第3回
  • 足し算を使わずに足し算する — KaoriYa

    int add(int a, int b) { while (b != 0) { int c = (a & b) << 1; a ^= b; b = c; } return a; } はい。この関数では足し算(演算子)を使わずに、ビット演算とループだけで足し算(加算)を実現しています。いわゆる全加算器ってやつで、これと同じ事が電気回路的に行われるのがCPUにおける足し算(演算子)です。 ざっくり解説しますと、一時変数cには各桁のキャリーを計算しています。キャリーはこんな真偽値表なので、 abc

  • 【5分で覚えるIT基礎の基礎】あなたは論理演算がわかりますか?---目次

    皆さんは,自信を持って「論理演算が分かる」と言えますか?ちょっと心配なら,この連載をお読みください。論理演算の意味と使い方をできるだけ短く整理して説明させていただきます。よろしくお付き合いください。 第1回 論理演算の種類と真理値表 第2回 AND,OR,XOR,NOTの意味と使い方の総整理 第3回 論理演算で四則演算ができる 第4回 ド・モルガンの法則は逆転の発想だ 第5回 真と偽の論理演算

    【5分で覚えるIT基礎の基礎】あなたは論理演算がわかりますか?---目次
  • 1