令和6年度上期第三種電気主任技術者試験 機械(電気技術者試験センター)問18(b)
機械
絶対値表示方式に関する問題
選択肢を押すと、その場で答え合わせ。電験三種の過去問 400問を、解説つき・無料・登録不要で続けて解けます。
(選択問題)
数の表現法について,次の(a)及び(b)の問に答えよ。
(b) 8 ビットの固定長で,正負のある2 進法の数値を表現する場合,次のような①及び②で示す方式がある。また,D-A コンバータにおいては次の③で示す方式が用いられる。①最上位ビット(左端のビット,以下MSB という)を符号ビットとして,残りのビットでその数の絶対値を表す方式は,絶対値表示方式と呼ばれる。この場合,MSB=0 が正(+),MSB=1 が負(-)と約束すると,10 進数の-8 は[(ア)]となる。②7 ビット長で表された正の数n に対して,-n を8 ビット長のn の2 の補数で表す方式がある。この方式による場合,10 進数の-8 は[(イ)]となる。この方式においても,MSB=1 は負の整数,MSB=0 は正の整数を示すことになる。この方式は,2 進数の減算に適している。③D-A コンバータでは,ディジタル入力量とアナログ出力量が比例の関係にある。8 ビットのD-A コンバータではディジタル入力量として,(1000 0000)₂ を与えた場合に,0.0000 V が出力されるようにしたオフセット・バイナリ・コードを用いることが多い。この場合,出力電圧が正のときは,MSB=1 となり,負のときは,MSB=0 となる。ディジタル入力値が(0000 0000)₂ のときのアナログ出力値が-5.0000 V であるオフセット・バイナリ・コードのD-A コンバータでは,ディジタル入力値が(0111 1000)₂ のときの出力電圧値は[(ウ)] V となる。上記の記述中の空白箇所(ア)~(ウ)に当てはまる組合せとして,正しいものを次の(1)~(5)のうちから一つ選べ。
| (ア) | (イ) | (ウ) | |
|---|---|---|---|
| (1) | (1000 1000)₂ | (1000 0111)₂ | -0.2734 |
| (2) | (1111 1000)₂ | (1000 1000)₂ | -0.3125 |
| (3) | (1111 1000)₂ | (1000 0111)₂ | -0.3125 |
| (4) | (1000 1000)₂ | (1111 1000)₂ | -0.3125 |
| (5) | (1000 1000)₂ | (1111 1000)₂ | -0.2734 |
- 1(ア) (1000 1000)₂ (イ) (1000 0111)₂ (ウ) -0.2734
- 2(ア) (1111 1000)₂ (イ) (1000 1000)₂ (ウ) -0.3125
- 3(ア) (1111 1000)₂ (イ) (1000 0111)₂ (ウ) -0.3125
- 4(ア) (1000 1000)₂ (イ) (1111 1000)₂ (ウ) -0.3125
- 5(ア) (1000 1000)₂ (イ) (1111 1000)₂ (ウ) -0.2734
答えと解説
✓ これが正解4(ア) (1000 1000)₂ (イ) (1111 1000)₂ (ウ) -0.3125
解説
-8は10001000と11111000、出力は-0.3125 Vの組合せ。
①の絶対値表示方式は、最上位ビット(MSB)を符号に使い、残りの7ビットで絶対値を表します。8 は7ビットの2進数で 000 1000 なので、-8 は符号ビット1を付けて (1000 1000)₂ です。よって(ア)は (1000 1000)₂ です。
②の2の補数は、正の数 n のビットをすべて反転して1を足すと得られ、これが -n を表します。8=(0000 1000)₂ を反転すると (1111 0111)₂、1を足すと (1111 1000)₂ です。確かめとして 8 と足すと (1 0000 0000)₂ となり、8ビットからあふれた桁を除くと0になるので、-8 を表していることが分かります。よって(イ)は (1111 1000)₂ です。
③のオフセット・バイナリ・コードでは、(1000 0000)₂=128 が 0 V、(0000 0000)₂=0 が -5.000 0 V なので、入力が1増えるごとに出力は 5/128=0.039 062 5 V ずつ増えます。入力 (0111 1000)₂ は10進数で 64+32+16+8=120 で、128 より8小さいので、出力は -8×0.039 062 5=-0.312 5 V です。よって(ウ)は -0.3125 です。
別の方法で確かめます。-5 V から数えると 120 段上がるので、-5+120×5/128=-5+4.687 5=-0.312 5 V となり、同じ値です。
絶対値表示は符号ビットを付け替えるだけ、2の補数は反転して1を足す、と手順で区別すると(ア)と(イ)を取り違えません。
ほかの選択肢の解説
- 1…1000 0111)₂ (ウ) -0.2734:(ア)は正しいものの、(イ)の (1000 0111)₂ は8の2の補数ではなく、(ウ)の -0.2734 V は1段あたり 5/128 V に7段分を掛けた値です。正しくは 128-120=8 段なので -0.3125 V です。
- 2…1000)₂ (ウ) -0.3125:(ウ)は正しいものの、(ア)と(イ)が入れ替わっています。符号ビットに1を付けて残りに絶対値8を入れた (1000 1000)₂ が絶対値表示方式で、ビットを反転して1を足した (1111 1000)₂ が2の補数です。
- 3…0111)₂ (ウ) -0.3125:(ア)を (1111 1000)₂、(イ)を (1000 0111)₂ としている点が誤りです。(1111 1000)₂ は2の補数による -8 で、絶対値表示方式では (1000 1000)₂ です。(1000 0111)₂ は8を反転して1を足した形になりません。
- 5…1111 1000)₂ (ウ) -0.2734:(ア)(イ)は正しいものの、(ウ)の -0.2734 V が誤りです。これは 5/128 V に7段分を掛けた値で、入力 120 と 0 V に当たる 128 の差は8段なので、-8×5/128=-0.3125 V になります。
出典:令和6年度上期第三種電気主任技術者試験 機械 問18(b)(電気技術者試験センター)。1問ずつ解ける形に加工しています(B問題の共通の文と図を小問ごとに複写・図と式を問題冊子から切り出して画像で掲載・1行で書ける式を字に書き直し)。解説は当サイト独自のもので、電気技術者試験センターとは関係ありません。
同じ分野の問題
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)