寫到後面變得很草率, 因為背的東西真的太多了
自己斟酌一下吧, 我也不知道背起來會不會考
-
Compiler internal
這題要理解會花一點時間, 建議看不懂就放棄
原始碼在編譯器中會經過一連串的分析轉換成真正的執行檔
- 前端
- Lexical: 語彙分析, 主要分析每行程式中的 token (類似語言中的詞彙, 作為分析的最小單位)
- Syntax: 語法分析, 分析 token 的組成是否合乎語法
- Semantic: 語意分析, 分析 token 組成的語意, 並轉換成對應的內部格式
- Intermediate codegen: 產生內部用的分析程式碼
- 後端
- Code generator: 根據內部用的分析程式碼產生平台對應的執行碼
- Code optimizer: 優化產生的執行碼
- 前端
-
OO
HTML 嚴格說起來不是一種程式語言
也沒有 OO 的概念 (封裝, 多型... etc)
-
Binary tree
-
IP, BJ4
-
數位簽章
數位簽章是為了驗證送方的身分
所以送方送出前會先用自己的私鑰(不公開)簽章
收方再用送方的公鑰(公開)驗證
-
網路基礎
一般家用 IP 分享器(ADSL modem 通常是用這種機器改來的)會有以下功能:
- DHCP: 動態發 IP
- NAT: 只用一個 public IP 就可以給多台 private network 的電腦上網
- Switching: 多個網孔之間需要有 switching 功能
DNS 是將 DN(網址)轉換為 IP 的對應機制, 一般都是選擇到外面查詢而非自建
-
Memory addressing
記憶體屬於 byte addressable (每次定址最細只能訂到 byte-level, 無法定到 bit-level)
所以 1M 的位址最少需要 2^20 => 20 條 address line
-
訊號傳輸
不確定怎麼解釋比較好, 不過長距離傳輸通常會牽扯到雜訊與衰減
現在應用的通常都是類比傳數位, 例如用 銅纜(電), 光纖(光), 無線網路(電磁波)
-
OSI, protocol stack
physical addressing (這邊的 address 就是 MAC address) 是屬於 Layer 2 在做的事情
這題對沒有網路基礎的算是蠻棘手的
不過粗略的理解來看, 越上層做的事情越高階, 所以邏輯的控制都會在高層級 L4 - L7 做
低層級就會是和傳輸相關 (addressing 等), 如 L3 就是做 IP addressing
-
database
(這種敘述方式我小學來寫就知道要選 C 了)
Index 對存取量大的 table 建就好
正確的三個選項可以當小常識看看, 也許會考
- Subnetting
因為多了兩個 bit 所以是 4 個 Subnet
可以參考 Wiki 的算法, 和這題很像
- Infix to postfix
這題要理解會花一點時間, 建議看不懂就放棄
用堆疊(先進先出)來轉換,可以看 "中序轉後序"
- Complexity
階乘, 指數 (2^n) > n^? > logn > 常數
係數可以不看 (ex: C. log(n^2.5) = 2.5 logn = logn)
- WAP (Wireless Application Protocol)
這就用背的吧, WAP 網頁要用特別方式處理過
BCD 都是一般網頁技術, 只好怒選有 W 的
WML: Wireless Markup Language
- Web
Cookie 是由瀏覽器存在本機的小檔案, 這算是生活小常識了
如果是存在遠端的那叫 session
- HTTP
HTTP Error code, 這個去看 RFC 吧
常見的有 404: not found, 403: forbiddan, 302 moved permanently 等等
500 是 Internal server error
- IPv4/IPv6
IPv4: 32 bits
IPv6: 128 bits
差 96 bits = 12 bytes
- Storage
嵌入式系統的 OS 儲存裝置特性:
- 非揮發性 (關電資料還在)
- 燒錄後唯獨
例如一般手機的 OS 就是一個例子
- CD
這我偷跑去查 wiki 了 = =
- Networking
除了背起來想不到其他方法
- 數學不外乎加減乘除平方開根號
65536 = 2^16 => 一個 pixel 需要 16 bits = 2 bytes
640*480*2(bytes)/1024.0 = 600 Kbytes
- FTP
撇開識別碼不談, 選項裡只有 FTP 可以直接傳檔
這裡的識別碼應該是指 FTP 的傳輸模式 (ASCII/binary.. etc)
- 3C
乖, 下去... (這題用看的也會)
- Compression
JPEG 是影像的壓縮技術
順帶一提, JPEG 是破壞性壓縮 (不可逆)
所以這裡的壓縮只能算是體積上的壓縮而已
- OS
這種系統講究的是即時性 (我亂掰的, 我也不知道)
所以通常會用 RTOS (real-time os)
- IEEE 754
這題要理解會花一點時間, 建議看不懂就放棄
這是浮點數表示的精簡版
有興趣可以參考 IEEE 754
- Scheduling time
CPU 一次只能跑一個程式
這個題目假設優先權高 (數字小) 的先執行
只要把圖畫出來就能知道等待時間了 (執行圖, 綠色是每個程式的等待時間, 黑色是執行時間)
平均: 28/5 = 5.6
- Flow control
Flow control 是指不要傳太快傳到對面被塞爆來不及收
順帶一提, Congestion control 是指不要傳太快導致中間經過的網路被塞爆
- Memory paging
Page 是切割記憶體的方式, 和 CPU 無關
- Binary tree
畫圖窮舉ㄅ, ㄏㄏㄏ
接左邊和右邊是不一樣的
- Logic gates
只有一個提示: 那個閘叫 NAND, 指的是先做 and 再做 not
- Lock
如同名字, exclusive lock 指的是排除其他人的 lock
- Crypt
其實我看不懂 C 再寫尛
不過 D 明顯不是必要的條件
- DES
幹這我不會, 有興趣真的請洽 wiki 了 = =
- AES
AES block 長度範圍是 128 - 256 byte (我也是看報紙才知道)
反正這種題目不是猜最大就是猜最小
牽扯到密碼一定越長越好, 所以選最短的
- Hash
扯到 hash 請記得 MD 開頭和 SHA 開頭
其他大概都很少用
- Firewall
(一般來說)防火牆不掃毒的ㄏㄏ
- Ping
Ping 底層就是 ICMP request/reply
- IDS
這是偵測是否有被入侵用的
總之他不是防毒軟體
- Binary
這... 交給你了
小數後面用乘的 (小學教過^^)