111 年 國立臺灣大學生物機電系碩士班丙組《計算機概論(A)》

📄 試題原卷 免費註冊後即可對照原始考卷 PDF免費註冊

第 1 題10 分

Consider the following logic circuit, derive the function Q in terms of A, B, C, D. (5%). Using the de Morgan's theorem, find the simplest form of the function Q (5%).

🖼️【此處有附圖,請對照原卷】
(邏輯電路:A 與經反相器的 B‾\overline{B} 輸入上方的 NAND 閘;經反相器的 C‾\overline{C} 與 D 輸入下方的 AND 閘;這兩個閘的輸出再一起輸入一個 NAND 閘,輸出為 Q。)

🖼️ 本題含圖表,以下為原卷對應頁面:
原卷第 1 頁

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

本題考查邏輯閘的布林函數表示,以及德摩根定理。閘輸出端的小圓圈代表反相:上方閘與最末閘是 NAND 閘,下方閘是 AND 閘。

德摩根定理為:

XY‾=X‾+Y‾,X+Y‾=X‾ Y‾\overline{XY}=\overline{X}+\overline{Y}, \qquad \overline{X+Y}=\overline{X}\,\overline{Y}

解題方法

先依訊號流向,分別寫出上方閘、下方閘的輸出,再代入最末閘。

上方 NAND 閘的輸入為 AA 與 B‾\overline{B},故其輸出為:

X=AB‾‾=A‾+BX=\overline{A\overline{B}}=\overline{A}+B

下方 AND 閘的輸入為 C‾\overline{C} 與 DD,故其輸出為:

Y=C‾DY=\overline{C}D

最末 NAND 閘將 XX 與 YY 作為輸入,因此:

🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 2 題10 分

Consider the following grammar:

S → AB$    (1)
A → xA     (2)
A → B      (3)
B → yzB    (4)
B → z      (5)

a) What are the terminals and non-terminals of this grammar? (5%)
b) Show the parse tree for xyzzz$. (5%)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

文法由非終結符、終結符及產生式構成。非終結符可依產生式繼續展開;終結符是推導完成後留下的符號。句子的推導結果,也可用解析樹呈現:根節點是開始符號,每個內部節點依照一條產生式展開,葉節點由左至右讀出的字串就是句子。

解題方法

(a) 由產生式左側可辨認非終結符;右側出現的符號中,凡不屬於非終結符者都是終結符。題目明確將 $ 寫在產生式中,因此它也是本題文法的終結符。

  • 非終結符:{S,A,B}\{S,A,B\}
  • 終結符:{x, y, z, $}

(b) 依照開始符號 SS 推導。目標字串在 $ 前是 xyzzz。先由 S → AB$,再讓 AA 產生開頭的 xx,接著 A→BA\to B;前一個 BB 產生 yzz,後一個 BB 產生 z:

S⇒AB$⇒xAB$⇒xBB$⇒xyzBB$⇒xyzzB$⇒xyzzz$S\Rightarrow AB\$\Rightarrow xAB\$\Rightarrow xBB\$ \Rightarrow xyzBB\$\Rightarrow xyzzB\$\Rightarrow xyzzz\$
🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 3 題10 分

Using the RSA encryption algorithm, pick the prime numbers p=11p = 11 and q=7q = 7. Find a set of encryption/decryption keys ee and dd. (10%)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

RSA 先選兩個質數 p,qp,q,計算模數 n=pqn=pq 與歐拉函數 φ(n)=(p−1)(q−1)\varphi(n)=(p-1)(q-1)。加密指數 ee 必須滿足 gcd⁡(e,φ(n))=1\gcd(e,\varphi(n))=1;解密指數 dd 則是 ee 在模 φ(n)\varphi(n) 下的乘法反元素,也就是

ed≡1(modφ(n))ed\equiv 1\pmod{\varphi(n)}

因此,eded 除以 φ(n)\varphi(n) 的餘數必須為 11。

解題方法

題目給定 p=11p=11、q=7q=7,先計算:

n=pq=11×7=77n=pq=11\times 7=77 φ(n)=(p−1)(q−1)=10×6=60\varphi(n)=(p-1)(q-1)=10\times 6=60

接著選一個與 6060 互質的 ee。取 e=7e=7,因為 gcd⁡(7,60)=1\gcd(7,60)=1,符合加密指數條件。

🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 4 題10 分

The keys 12, 18, 13, 2, 3, 23, 5 and 15 are inserted into an initially empty hash table of length 10 using open addressing with hash function h(k)=k mod 10h(k) = k \bmod 10 and linear probing. What is the resultant hash table? (10%)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

本題考查開放定址法中的線性探測。雜湊表長度為 1010,索引範圍是 00 到 99。每個鍵先依雜湊函數計算起始位置:

h(k)=k mod 10h(k)=k\bmod 10

若起始位置已被占用,就依序檢查下一格,直到找到空格為止。探測位置會在表尾循環回表頭,但本題不需要循環。

解題方法

依題目給定的鍵值順序逐一插入;每次遇到碰撞,就往下一個索引探測。

插入鍵值起始位置探測過程放入位置
121212 mod 10=212\bmod 10=2索引 22 為空22
181818 mod 10=818\bmod 10=8索引 88 為空88
131313 mod 10=313\bmod 10=3索引 33 為空33
222 mod 10=22\bmod 10=2索引 2、32、3 已占用,索引 44 為空44
333 mod 10=33\bmod 10=3索引 3、43、4 已占用,索引 55 為空55
🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 5 題10 分

Consider a 10 Mbps Ethernet LAN that has stations attached to a 2.5 km long coaxial cable. Given that the transmission speed is 2.3×1082.3 \times 10^8 m/sec, the packet size is 128 bytes out of which 30 bytes are overhead, and the efficiency is 59%, answer the following questions.
a) What is the transmission delay? (3%)
b) What is the propagation delay? (3%)
c) What is the effective transmission rate? (4%)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

這題考三種速率/延遲的區別:

  • 傳輸延遲:把整個封包的位元送上傳輸媒介所需的時間,公式為「封包位元數 ÷ 傳輸速率」。
  • 傳播延遲:訊號沿媒介從一端傳到另一端所需的時間,公式為「媒介長度 ÷ 訊號傳播速度」。
  • 有效傳輸率:名目傳輸率經效率折減後,再按封包中真正承載資料的比例計算。

以下將題目的 59%59\% 視為媒介傳送效率,並將 30 bytes overhead 視為不承載有效資料的封包負擔。

解題方法

a) 傳輸延遲

封包大小為 128 bytes,換算成位元:

128×8=1024 bits128 \times 8 = 1024\ \text{bits}

乙太網路傳輸速率為 10 Mbps=107 bits/sec10\ \text{Mbps}=10^7\ \text{bits/sec},因此:

傳輸延遲=1024107=1.024×10−4 sec=102.4 μs\text{傳輸延遲} =\frac{1024}{10^7} =1.024\times 10^{-4}\ \text{sec} =102.4\ \mu\text{s}

b) 傳播延遲

同軸電纜長度為 2.5 km=2500 m2.5\ \text{km}=2500\ \text{m},訊號傳播速度為 2.3×108 m/sec2.3\times 10^8\ \text{m/sec}:

🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 6 題10 分

Assume that a 12-bit Hamming codeword consisting of 8-bit data and 4 check bits is d8d7d6d5c8d4d4d3d2c4d1c2c1d_8d_7d_6d_5c_8d_4d_4d_3d_2c_4d_1c_2c_1, where the data bits and the check bits are given in the following tables. What are the values of A and B? (10%)

Data bits

d8d_8d7d_7d6d_6d5d_5d4d_4d3d_3d2d_2d1d_1
110A0101

Check bits

c8c_8c4c_4c2c_2c1c_1
B010

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

12 位元 Hamming code 的檢查位元放在由右至左編號的第 1、2、4、81、2、4、8 位,分別是 c1、c2、c4、c8c_1、c_2、c_4、c_8。採用偶同位時,每個檢查位元所涵蓋的位置,其位元總和必須為偶數;等價地說,這些位元的 XOR 結果為 00。

依 12 位元標準位置排列,題幹字串中重複的 d4d_4 視為排版誤植,位置如下:

位置121110987654321
位元d8d_8d7d_7d6d_6d5d_5c8c_8d4d_4d3d_3d2d_2c4c_4d1d_1c2c_2c1c_1

解題方法

先利用 c1c_1 的檢查範圍求 AA。c1c_1 檢查位置 1、3、5、7、9、111、3、5、7、9、11,也就是:

🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 7 題10 分

The preorder traversal sequence of a binary search tree is:
30, 20, 10, 15, 25, 23, 39, 35, 42
a) Draw the binary search tree. (5%)
b) What is the postorder traversal sequence of the same tree? (5%)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

二元搜尋樹(BST)中,每個節點都滿足:左子樹的鍵值小於該節點,右子樹的鍵值大於該節點。

前序走訪順序為「根 → 左子樹 → 右子樹」,所以序列的第一個值是根。重建時,依 BST 的大小規則將後續節點分到左右子樹;後序走訪則是「左子樹 → 右子樹 → 根」。

解題方法

前序序列為:

30, 20, 10, 15, 25, 23, 39, 35, 4230,\ 20,\ 10,\ 15,\ 25,\ 23,\ 39,\ 35,\ 42

第一個值 3030 是根。接著依大小關係建立左右子樹:

  • 小於 3030 的節點屬於左子樹:20,10,15,25,2320, 10, 15, 25, 23。
  • 大於 3030 的節點屬於右子樹:39,35,4239, 35, 42。
  • 左子樹以 2020 為根。1010 小於 2020,位於左側;2525 大於 2020,位於右側。1515 小於 2020、但大於 1010,因此是 1010 的右子節點;2323 小於 2525,因此是 2525 的左子節點。
  • 右子樹以 3939 為根。3535 小於 3939,位於左側;4242 大於 3939,位於右側。

a) 二元搜尋樹

🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 8 題10 分

Find the arithmetic expression for the following assembly code. (10%)

MOV   AX, A
MOV   BL, B
ADD   AX, 2
MOV   CL, 3
SUB   BL, CL
DIV   BL
MOV   SUM, AL

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

本題考查 8086 組合語言的資料寬度、算術指令,以及 DIV 的隱含被除數與商、餘數位置。

DIV BL 的除數是 8 位元暫存器 BL。執行 8 位元除法時,處理器以 AX 為被除數,將商存入 AL、餘數存入 AH。

解題方法

依序追蹤指令執行後的暫存器值:

  1. MOV AX, A:令 AX = A。
  2. MOV BL, B:令 BL = B。
  3. ADD AX, 2:令 AX = A + 2。
  4. MOV CL, 3、SUB BL, CL:令 BL = B - 3。
  5. DIV BL:以 AX 除以 BL,商存入 AL。
  6. MOV SUM, AL:將商存入 SUM。
🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 9 題10 分

Write a program which sorts the following data in ascending order using the selection sort algorithm. You may use any computer programming language for this problem. (10%)

201210152

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

選擇排序(selection sort)每一回合都在尚未排序的區間中找出最小值,並將它與區間最左側的元素交換。完成一回合後,最左側的位置便確定為目前區間的最小值;接著縮小未排序區間,直到全部排好。

解題方法

原始資料為 [20,12,10,15,2][20,12,10,15,2]。依序找出每一輪未排序區間的最小值:

回合未排序區間最小值交換後的資料
1[20,12,10,15,2][20,12,10,15,2]2[2,12,10,15,20][2,12,10,15,20]
2[12,10,15,20][12,10,15,20]10[2,10,12,15,20][2,10,12,15,20]
3[12,15,20][12,15,20]12[2,10,12,15,20][2,10,12,15,20]
4[15,20][15,20]15[2,10,12,15,20][2,10,12,15,20]

以 Python 實作如下:

🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

第 10 題10 分

A pair of positive integer numbers are called twin primes if they are both prime numbers and the difference between them is 2, i.e., they are consecutive odd numbers and they are prime numbers. (3, 5), (5, 7) and (11, 13) are three examples of such pair of twin prime numbers. Write a program to display all the pairs of twin prime numbers that are less than 10000. You may use any computer programming language for this problem. (10%)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

孿生質數是兩個質數,且相差 22。因此只要由小到大檢查每個整數 pp,判斷 pp 與 p+2p+2 是否皆為質數,就能找出所有孿生質數對。

本題適合使用埃拉托斯特尼篩法。質數 nn 的合數倍數可由其質因數標記;篩到 n\sqrt{n} 即可,因為若 nn 是合數,至少有一個因數不大於 n\sqrt{n}。

解題方法

題目要求兩個數都小於 1000010000,所以令上限為 1000010000,建立索引為 00 到 99999999 的布林陣列 is_prime。初始時假設每個數都是質數,再依序將合數標記為 False。

對每個未被標記的質數 pp,從 p2p^2 開始標記其倍數。小於 p2p^2 的倍數已會由更小的質因數標記,因此可從 p2p^2 起算。完成篩選後,逐一檢查 pp 和 p+2p+2;兩者皆為質數時輸出該數對。

🔒

後續完整解題步驟與【答案】

免費註冊,享三天全站完整詳解閱覽。

免費註冊

其他考古題