- ベストアンサー
排他的論理和の問題
banakonaの回答
「00001111」の出所は,問題文の「任意の8ビットのデータXと、8ビットのデータ00001111をビット毎に・・・」の「00001111」です。 分かりやすくするために、問題にある排他的論理和の表をタテ横ぎゃくにすると、 A | 0 0 1 1 B | 0 1 0 1 C | 0 1 1 0 AとBの排他的論理和の結果がCとなることを示しています。 Bが0であれば、Aのビットはそのままで、 Bが0であれば、Aのビットはそのままで、が反転(0は1に、1は0になる)することを示しています。 これを8ビット(8桁)の「各桁」について計算します。 例えば、データXが00110011なら、これと「00001111」の排他的論理和を計算すると、 「0000」となっている上位はそのままなので「1100」となり、「1111」となっている下位は反転するので「0011」となり、全体は、 11000011 になります。 もう一つ計算すると、データXが01011001なら上位「0101」がそのまま、下位「1001」が反転するので「0110」で、 01010110 となります。 (補足)上記表は、Aを基にして「Aが1のときBが反転し、Aが0のときBはそのまま」ということもできます。 (蛇足?)【解説】の「データBのビット列は、00001111ですから、」という表現が悪いのかも。AとかBとかいうから「何がデータB?」という混乱が生じます。 私ならサラっと「00001111との排他的論理和なので」と言います。
関連するQ&A
- どなたか、この問題を解いて教えてください。。
基本情報技術者試験の勉強中なのですが、この例題が、解説を読んでもわかりません。項目は論理演算です。どなたか、教えていただけないでしょうか? 【問題】 8ビットのデータの下位2ビットを変化させずに、上位6ビットのすべてを反転させる論理演算はどれか? ア 16進数03と排他的論理和をとる イ 16進数03と論理和をとる ウ 16進数FCと排他的論理和をとる エ 16進数FCと論理和をとる 【答え:ウ】 【解説】16進数FCは11111100です。排他的論理和を取ると、上位6ビットは反転され、下位2ビットはそのままとりだせます。 と、書いてあります。2進数に変換するまではわかるのですが、排他的論理和を取るというのは、どういうことなのでしょうか? すみませんが、宜しくお願いします。
- ベストアンサー
- その他([技術者向] コンピューター)
- (論理咳,論理和,排他的論理和)基本情報処理の問題
今基本情報処理の勉強をしているのですが、 論理咳,論理和,排他的論理和の問題で、いまいちわからない部分がありますので教えてください。 【問題】 ビット数が等しい任意のビット列aとbに対して、等式=bと同じことを表すものはどれか。 ここで、AND,OR,XORはそれぞれ,ビットごとの論理咳,論理和,排他的論理和を表す。 ア a AND b = 00…0 イ a OR b = 11…1 ウ a XOR b = 00…0 エ a XOR b = 11…1 解答 「ウ a XOR b = 00…0」 となっているのですが この質問に出ている 「00…0」 or 「11…1」は何を表しているのでしょうか? 「00…0」 = 全てのビットが0になる 「11…1」 = 全てのビットが1になる という意味を指しているのでしょうか?
- ベストアンサー
- その他(学問・教育)
- 排他的論理和について
PHPで排他的論理和を使っているのですが、サーバによって挙動が異なっています。 $a= -5748825183 $b= 160952 の時に、 $a^$b とすると、基本的に結果は「-1454008551」になっているようですが、いくつかのサーバは「-2147322696」になってしまいます。 なぜこのような挙動になるのでしょうか? 何かPHPやサーバの設定で、注意しなければならいところがあるのでしょうか? 非常に訳のわからない挙動になっており、アドバイスをいただければと思います。 色々調べましたが、PHPでビット演算子を使うことはあまりない(?)ようで、基本的な情報しか見つけられませんでした。 よろしくお願いいたします。
- ベストアンサー
- PHP
- 排他的論理和
排他的論理和を2回演算すると、元に戻ることを下記の例で確認しなさい。 回答は下記の<2進数>と<16進数>の部分を書き換えなさい。 (1)平文と鍵から暗号文を作りなさい 【平文】 ABC <16進数> <2進数> 【鍵】 XYZ <16進数> <2進数> ---------------------------- 【暗号文】 <16進数> <2進数> (2)暗号文と鍵から平文が復元できることを示しなさい 【暗号文】 <2進数> <16進数> 【鍵】 XYZ <2進数> <16進数> ---------------------------- 【平文】 ABC <2進数> <16進数> ヒント:(1)は、平文と鍵を16進数と2進数に書き直し、2進数で排他的論理和を計算し、それを16進数に直せば暗号文を定義できる。平文、鍵、暗号文はどれも16進数6桁になる。 (2)も同様に暗号文と鍵から平文を生成する。 最後に(1)の平文と(2)の平分を比較してみなさい。違っていればもう一度見直しなさい。 どなたか教えてください。 さっぱりわからないです。
- 締切済み
- その他(学問・教育)
- 基本情報技術者試験 論理演算に関する問題
最上位をパリティビットとする8ビット符号において,パリティビット以外の下位7ビットを得るためのビット演算はどれか。 ア 16進数0FとのANDをとる。 イ 16進数0FとのORをとる。 ウ 16進数7FとのANDをとる。 エ 16進数FFとのXOR(排他的論理和)をとる。 (基本情報技術者試験 平成18年度春季午前 問6) この問題の解説お願いします。パリティビットって何ですか。いまいちよく分かりません。
- ベストアンサー
- 情報処理技術者
- 真理値表→論理式
3桁の2進数X = (x2, x1, x0)を入力し、2倍して1を足し出力する 論理回路があります。 ここで出力をY= (y3, y2, y1, y0)とし、x2,y3を最上位ビット x0, y0を最下位ビットとします。 これは、真理値表は x2 x1 x0 y3 y2 y1 y0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 1 1 0 0 1 0 0 1 1 0 1 1 0 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 となると思うんです。ここから、論理式の作り方を教えていただけないでしょうか? 出来れば、最簡形であるとうれしいです。 よろしくお願いします。
- ベストアンサー
- その他(学問・教育)
- 排他的論理和のみを用いて回路を表現
排他的論理和回路(X-OR)のみを用いて、他の回路(AND、OR、NOTなど)を表現するという問題を解いています。 ブール代数からの変換等を用いてX-ORの形になるように色々と変換していますが、変換の通りだけでも種類がたくさんあるので、どうもうまくいきません。 類似問題として、NAND回路、NOR回路への変換は、教科書に記載されており、否定要素もあったのですぐにNOTから変換でき、AND、ORへつなげることができました。 せめてNOTの変換だけでもわかれば、AND、ORもすぐに理解できそうなのですが、X-ORのみの構成では、入力が0のときに1が出力される組み合わせが思いつきません。 ヒント、アドバイス等ありましたらよろしくお願いします。
- ベストアンサー
- その他(学問・教育)
お礼
ありがとうございます。 例題風に解説してくださり、とても分かりやすかったです。