Hack 指令集架構(The Hack ISA)
本講義整合了第七週四份投影片 (7-1 The Hack instruction set architecture、 7-2 The Hack microarchitecture、7-3 Comparative architecture、 7-4 Microarchitecture optimisation: Pipelining and caching)的全部內容, 並補充了 RISC vs CISC 的現代論戰、資料前遞(forwa
글 읽기 →全局視角:兩趟式組譯器
[itemsep=1pt] 思考如何用 C 實作符號表(symbol table); 用 C 寫一個 Hack 詞法分析器(lexer), 用提供的測試腳本驗證; 把 lexer 擴充成完整的組譯器(assembler),再驗證。 文字比對工具(Windows 的 、 Linux/Mac 的 、或圖形化的 Meld)+一個 C 編譯器。 課程提供 、 與 骨架——我們的工作是把骨架裡的空缺填滿。
글 읽기 →編譯器的全貌與詞法分析(Lexing)
本講義整合了第八週四份投影片 (8-1 Compiler concepts: Lexing、8-2 Compiler concepts: Symbol tables、 8-3 Compiler concepts: Parsing、8-4 A parser for Hack assembly) 的全部內容,並補充了遞迴下降解析(recursive descent)等延伸知識。 每章結尾附有「本章重點」整理;第 5 章為綜合練習題,附完整詳
글 읽기 →虛擬機與中介表示法(VMs and IRs)
本講義整合了第九週四份投影片 (9-1 Virtual machines and intermediate representations、 9-2 The Hack VM I: Structure, arithmetic and logic、 9-3 The Hack VM II: Branching and memory、 9-4 Implementing the Hack VM translator)的全部內容, 並補充了堆疊機
글 읽기 →Test 1 實作部分(Practical Section,50 分)
COMSM1302 每學期有兩次課堂測驗(in-class test), 各佔 100 分、限時 2 小時、各含 16 題: [itemsep=1pt] (第 6 週,2024/10/23):涵蓋第 1–4 週 ——布林代數、卡諾圖、邏輯閘、時序邏輯(閂鎖與正反器)、 暫存器與記憶體、有限狀態機、CMOS 電晶體。 實作部分在 Logisim(考試版 Logiexam)中完成電路。 (第 11 週,2024/12/12):涵蓋第 5–1
글 읽기 →CCIT4064 Microcontrollers Assignment 3 詳細解答
說明:除非特別註明,8051 題目以標準 Intel MCS51 指令集與 12 MHz 晶振計算;Arduino 題目以 Arduino UNO R3 / Arduino Sketch 語法回答。
글 읽기 →Assignment 3 — 詳細問題說明與完整解答
使用說明 本文件對照原始解答 PDF(Assignment3wfay2526 solution.pdf)逐題重寫,補充每一個推導步驟,並在原 PDF 出現誤植處明確標註並給出依題目原始條件的正確答案: 1. Q1dii 標題:原 PDF 寫成 998.3125,但題目給的是 998.125,且解答內文展開為 1111100110.001₂(對應 0.125),故 hex 結果 0xC4798800 對應的是 998.125。本文以題目為
글 읽기 →Chapter 7:Single Cycle Processor Part 1 — 單周期處理器(第一部分)
課程:Introduction to Computer Organization CCIT4026 主題:MIPS 單周期處理器的構建模組與資料路徑
글 읽기 →Chapter 8:Single Cycle Processor Part 2 — 單周期處理器(第二部分)
課程:Introduction to Computer Organization CCIT4026 主題:單周期處理器的控制單元設計與完整執行範例
글 읽기 →Chapter 9:Multiple Cycle Processor — 多周期處理器
課程:Introduction to Computer Organization CCIT4026 主題:多周期處理器的架構、執行流程與 FSM 控制單元設計
글 읽기 →IEEE 754 浮點數標準 完整教學
1. 為什麼需要浮點數?1為什麼需要浮點數 2. 科學記號與二進位科學記號2科學記號與二進位科學記號 3. IEEE 754 格式總覽3ieee754格式總覽 4. 單精度(Single Precision, 32bit)4單精度singleprecision32bit 5. 雙精度(Double Precision, 64bit)5雙精度doubleprecision64bit 6. 偏移指數(Biased Exponent)6偏移指
글 읽기 →MCS51 8051 組合語言完整指令集參考手冊
本手冊涵蓋 MCS51 微控制器的全部 111 條指令,分為五大類別,詳細說明每條指令的語法、運作原理、影響旗標、位元組數、機器週期數及使用範例。
글 읽기 →國立臺北教育大學資科所 111114 年度計概考題學習指南 教材索引
本教材根據「國立臺北教育大學資科所 111114 年度計概考題學習指南.pdf」整理,提供系統化的學習材料,涵蓋計算機概論與演算法的核心主題。
글 읽기 →CPU 效能計算
其中: 指令數 Instruction Count: 程式執行所需的總指令數量 CPI Cycles Per Instruction: 平均每條指令所需的時脈週期數 時脈頻率 Clock Rate: CPU 的時脈頻率,單位為 Hz(如 GHz)
글 읽기 →馮紐曼模型 von Neumann Model
馮紐曼模型(von Neumann Model)是由數學家約翰·馮紐曼(John von Neumann)在 1945 年提出的電腦架構模型。這個模型奠定了現代電腦的基本架構,至今仍被廣泛使用。
글 읽기 →死結 Deadlock
死結 Deadlock 是指一組行程 Processes 處於僵持狀態,其中每個行程都在等待一個僅能由該組中另一個行程才能釋放的資源。
글 읽기 →虛擬記憶體 Virtual Memory
1. 記憶體容量限制: 程式大小受限於實體記憶體容量 2. 多程式執行困難: 多個程式難以同時載入記憶體 3. 記憶體碎片: 頻繁的分配和釋放會產生碎片 4. 程式保護困難: 程式可能存取到其他程式的記憶體空間
글 읽기 →動態連結與靜態連結
當我們編寫程式時,通常會: 使用標準函式庫(如 printf, malloc) 將程式分成多個原始檔 使用其他開發者提供的函式庫
글 읽기 →RISC vs. CISC 架構
指令集 Instruction Set 是 CPU 能夠理解和執行的所有指令的集合。它定義了: CPU 可以執行哪些操作 指令的格式和編碼方式 如何存取記憶體和暫存器
글 읽기 →多元程式處理 Multiprogramming
多元程式處理 Multiprogramming 是指作業系統同時將多個程式載入記憶體中,當一個程式因為等待 I/O 操作而暫停時,CPU 可以切換到另一個程式繼續執行,從而提高 CPU 的利用率。
글 읽기 →排序演算法:插入排序與選擇排序
穩定排序: 相同值的元素在排序後保持原有相對順序 不穩定排序: 相同值的元素在排序後可能改變相對順序 內部排序: 所有資料都在記憶體中 外部排序: 資料太大,需要用到磁碟
글 읽기 →霍夫曼編碼 Huffman Coding
節省儲存空間: 減少檔案大小 節省傳輸時間: 減少網路傳輸時間 節省頻寬: 減少網路頻寬使用
글 읽기 →二元樹走訪 Binary Tree Traversal
二元樹 Binary Tree 是一種樹狀資料結構,其中每個節點最多有兩個子節點,分別稱為左子節點和右子節點。
글 읽기 →二元搜尋樹 Binary Search Tree, BST
二元搜尋樹 Binary Search Tree, BST 是一種特殊的二元樹,滿足以下性質:
글 읽기 →