凡例 A_B は A の右下に B が付くことを表す。(進数の表示の時など) A^B は A の右上に B が付くことを表す。(累乗の表示の時など) [1] (1) N (88)_10 を 6 進数に変換しなさい。 6 ) 88 ----- 6 ) 14 ... 4 ----- 2 ... 2 答 (224)_6 (2) N を 2 進数に変換しなさい。 答 (88)_10 = 64+16+8 = (01011000)_2 左端に 1 bit 0 を補う必要あり (3) (2) で求めた結果の 2 の補数を求めなさい。 01011000 10100111 : 反 10101000 : +1 答 10101000 (4) (3) の結果を右に 2 ビット算術シフトして得られる数を 10 進数で示しなさい。 10101000 11101010 : 右に 2 ビット算術シフト、これが答の 2 進数 00010101 : 反 00010110 : +1, 値は 22, よって元の値は -22 とわかる 答 -22 (5) N を ゾーン形式の 2 進化 10 進数で表現する時のビットパターンを示しなさい。 答 00001000 00001000 (6) スタックの機能を説明しなさい。 答 レジスタ内のデータなどを一時的に別の場所に記憶させたい 場合にメモリの特定の場所に退避、記憶しておくための仕組み (7) バイトマシン、ワードマシンの違いは何か。 答 バイトマシンはメモリの 1 Byte 毎に番地を割り当てる方式、 ワードマシンはメモリの 1 ワード毎に番地を割り当てる方式、 この場合のワードは CPU が一度に処理できるデータのサイズを表す。 (8) プログラムカウンタの機能を説明しなさい。 答 次に実行する命令が記憶されているメモリ中の場所の番地を記憶する (9) 32 ビット CPU では何が 32 ビット なのか。 答 レジスタサイズ、データバスなどが 32 ビットになる。 CPU が一度に処理できるデータのサイズが 32 ビットになる。 (10) 下図に示すように、命令語のレジスタ指定部が 3、番地部が 11、PC が 4、レ ジスタとメモリの各部がそれぞれ図に示す値になっている時、 インデックス修飾方式によって指定されるデータの値を答えなさい。 レジスタはインデックスレジスタの機能も持つものとする。 番地部が 11 で、レジスタ 3 に記憶されている値が 5 なので、 両者を加算した 16 が処理対象のデータの番地となる。 16 番地に記憶されている 18 が処理対象となる。 答 18 [2] (1) 10 進数の 1.0 を表す正規化した表現と、浮動小数点数のビット パターンを 16 進数で示しなさい。 (1.0)_10 = (1.0)_2 1.0 X 2^0 0 01111111 00000000000000000000000 = 3F800000 答 1.0 X 2^0, 3F800000 (2) 10 進数の 11.625 を表す正規化した表現と、浮動小数点数のビット パターンを 16 進数で示しなさい。 (11.625)_10 = (1011.101)_2 1.011101 X 2^3 0 10000010 01110100000000000000000 = 413A0000 答 1.011101 X 2^3, 413A0000 (3) 16 進数の C0400000 に対応するビットパターンの浮動小数点数を 10 進数で示しなさい。 (C0400000)_16 = 1100 0000 0100 0000 0000 0000 0000 0000 1 10000000 10000000000000000000000 -1.1 X 2^1 = (-11)_2 = (-3)_10 答 -3 [3] (1) (D1) + 100 を (ANS) に格納する。 答 EX1 START LD GR1, D1 LAD GR1, 100, GR1 ST GR1, ANS RET D1 DS 1 ANS DS 1 END LAD ではインデックスレジスタに GR0 が指定できないので、 このプログラムでは GR0 以外を使う必要がある。 または EX1B START LD GR1, D1 ADDA GR1, D100 ST GR1, ANS RET D1 DS 1 D100 DC 100 ANS DS 1 END など (2) (D1) - (D2) + (D3) を ANS に格納する。 答 EX2 LD GR0, D1 SUBA GR0, D2 ADDA GR0, D3 ST GR0, ANS RET D1 DS 1 D2 DS 1 D3 DS 1 ANS DS 1 END (3) (D1) を 15 倍して結果を ANS に格納する。(シフト命令を使うこと) 答 EX3 LD GR0, D1 SLA GR0, 4 SUBA GR0, D1 ST GR0, ANS RET D1 DS 1 ANS DS 1 END