# Chapter3-4,3-5 「半加算器と全加算器」「ビット操作とマスクパターン」 ## 4/14(水) ###### tags:`基本情報技術` さつき: ##### 半加算器と全加算器 * コンピュータのどこで、この半加算器、全加算器が使われているのかな * [ALUとは](https://e-words.jp/w/ALU.html) * CPUの一部として実装されている * 下位からの桁上がりを考慮しない半加算器と、それも考慮する全加算器がある ##### 半加算器 * 排他的論理和(EOR,XOR...片方だけ1の時に1)と、論理積回路(AND...両方1のときに1)の組み合わせでできている ##### 全加算器 * 2桁目以降は全加算器が必要。下位の桁からのくりあがりと、上位の桁へのくりあがりどちらもある。 * ##### 過去問 * 問1 * 難しい単語多いけど、半加算器がなんなのか知ってたら解けた...!! * 問2 * どちらかが1なら1 → 1 * 足して2進数だと0 → 0 でいいのか。。 * おわり! #### ビット操作とマスクパターン * 8ビットの2進数同志をつなげるのに、全加算器7つと半加算器1つ * 「足し算の理屈で引き算もしちゃうんですよー」 * 2の補数を作ることができれば、引き算できる * でも、2の補数をつくるために、反転ってどういう回路でするのか→論理演算でできる! ##### ビットを反転させる * 排他的論理和(EOR,XOR...どっちかが1のときに1)を用いる * マスクパターン...ビットを反転させたい位置に1を入れたビット列 ##### 特定のビットを取り出す * ビットを取り出す場合は、論理積(AND...どっちも1のときに1)を用いる ##### 過去問 * 問1 * 全ビットの反転...排他的論理和(XOR,EOR) * 反転させたい位置全てに1を入れる→11111111 * 「nの全ビットが反転されます。XORを使えば(n XOR 11111111)と表現されます」... そうなのか、としか。 * 問2 * 全ビット反転はXOR,EOR...おけ! にわ: - chapter 3-4 - 読み込み * 2進数の足し算を行う回路を「加算器」と言う * 半加算器:「実際に足し算してる」と言うよりは、法則性を元に正しい結果になるようにAND回路とEOR(XOR)回路を組み合わせてる。 * 全加算器:桁数が多い加算の場合、半加算器では2桁目以降の繰り上がりに対応できないので、半加算器とOR回路を組み合わせた全加算器を使う。 - 過去問 * おお、問1は分かった・・・!(とりあえずx=1,y=1と置いて考える) * 問2、純粋に2進数の足し算なのでは・・・?んん???←そりゃそうか、加算器だから・・・出力としてはこうなってるよ、ってこと - chapter 3-5 - 読み込み * 引き算もビットを反転させて+1する足し算でやるので、EOR,XORを使う。 * 「ビットを反転させたい位置に1を入れたビット列」=マスクパターンと言う * 特定のビットを取り出す場合はマスクパターンとANDを使う - 過去問 * 問1:XORと最小桁数に1を足す、と言う判断ならわかるけど・・・この解説はまだわからん・・・ * 問2:全ビット反転なので排他的論理和、アかウ→16進数の「00」「FF」が・・・2進数に変換できませんでした・・・
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up