基本情報技術者試験的な備忘録(加算器とxor)

 

パソコン素人です。
論理演算素人です。

 

基本情報技術者試験の問題・テキスト等を見て気になったメモです。                
多分間違っているのであまり見ないで下さい。すみません。                
                
                
(記載内容や参考にしたネット情報など問題がありましたら、早急に削除いたします。)                
                
                
XOR(排他的論理和)というのがある。                
                
A  ・  B       →A XOR B        
偽 ・   偽    →偽        
偽 ・   真    →真        
真 ・   偽    →真        
真 ・   真    →偽        
(一方が、偽の場合、真)                
ベン図だと以下の感じ。                


                
                
何でこんなの必要なのと思っていた。                
(NANDやNORは、それぞれANDとORの結果を反転なので分かるけど                
・・・XORって意味あるか?)                
                
このXORを使うのが、「半加算器」。                
半加算器はこんな感じ。(2進数です。)                
                
 

        

図の下の方の変なマーク(うまく書けていない)がXORの箇所。                
                
で、Cはcarryで桁上がり。Sはsumで和(1桁目)を指し、1桁目に使う。                
なるほど、1桁目の和(1+1)を0にするにはXORは便利。                
                
で、半加算器の次に、全加算器というのがある。                
全加算器は、XYの入力以外に、Cという入力もある。                
中味は半加算器をつないだもの。                
Cは桁上がりしてきたものの処理に使う。                
→全加算器を複数つなぐと2ケタ以上の計算ができる。                
                
以下の感じ。                
                
 


              
                
   上下に2個つなげている。             
                
  下記のように1桁目に半加算器。2桁目以降全加算器にすると計算できる(らしい。)              
 H21年秋期午後問題問1設問3の図です。                
これで4ビット(4桁の処理)が可能。                
ちなみに減算は2の補数表現を足せばいい(らしい)。