New Posts

[DSA] 鏈結串列 linked list – 單向鏈結串列
一般來說我們在認識鏈結串列前,應該都會先接觸陣列。陣列有個特徵是「連續的記憶體空間」,因此除了索引之外,操作上不是那麼的有效率。而鏈結串列就不一樣,不需要一整塊連續的記憶體空間,它可以分散各處……

[CHIP-8 小東西] CHIP-8 規格介紹
CHIP-8 是一種簡單的直譯式程式語言,也是一套簡單的虛擬機規格,出現於 1970 年代末期至 1980 年代初期,主要應用在 DIY 電腦系統上。本篇將藉由介紹 CHIP-8 背景以及實際規格,為之後的小型專案鋪路。

[軟體測試] Linux GUI 測試工具:dogtail
Dogtail 是基於 Python 圖形介面自動化測試工具,透過 Accessibility / AT-SPI(Assistive Technology Service Provider Interface,輔助技術服務提供介面)與桌面應用程式互動。

2026 Generative AI 年會筆記(二):把技術帶回人的需求裡
接續上一篇整理的開發者年會與 Vibe Coding,這篇整理的是第二天的年會主題。相較於第一天更聚焦在 Agent 如何被開發、驗證、部署與維護,第二天聽起來更像是把視角拉到企業與組織層面:當 Agent 真的進入真實工作之後,公司、產品、流程與人會怎麼改變?

2026 Generative AI 年會筆記(一):能生成,不代表能交付
大家都會用 AI 工具已經不稀奇了,把 know-how、工作脈絡重新設計成可以被 AI 協作、接手、維護的系統,那才是價值所在。今年的 2026 Generative AI 年會,主軸是 Agent First,要談論把 Agent 接進真實工作之後,工程、產品、組織會長成什麼樣子。這次有兩個整天,三場年會主題:開發者年會、Vibe Coding 以及年會。開發者談 Harness、Vibe Coder 談規格與部署、年會談企業案例與重要趨勢。這篇先整理第一天的兩個部分:開發者年會與 Vibe Coding。

在內容風暴下,找回留白與停頓
今年第一季度結束後放了一個長假,原先出國行程受影響,轉為在家整理自己的狀態……我需要那些自然的空白停頓,如同渴望找回在書店與圖書館翻閱、在劇場沈浸的純粹,那些需要親自抵達、需要時間沉澱的事物……

[Tiny Processor] 處理器架構介紹與算術單元實作
這次想從頭做一個簡單的 processor,實際把 instruction、register、arithmetic unit、memory 與控制流程一個個串起來。整個 project 會從最基本的架構開始,邊實作邊驗證,也順便重新熟悉 Verilog、FPGA 與 testbench 的開發流程。

[CHIP-8 小東西] 指令集虛擬化與解碼機制
CHIP-8 的每條指令固定由 2 bytes,也就是 16 bits 組成,並利用不同位置的位元表示操作類型、暫存器、記憶體位址與常數值。本篇將先說明 opcode 中常見的 nnn、x、y、kk 與 n 等欄位,再利用 bit mask、位移運算與 switch-case 建立指令解碼流程,最後依序實作控制流程、條件判斷、暫存器運算、繪圖、鍵盤、計時器、BCD 與記憶體存取等 CHIP-8 核心指令。

[CHIP-8 小東西] 核心指令集虛擬化與程式載入器實作
虛擬硬體元件開發完成後,接下來就進入模擬器最核心的階段:實作指令集模擬器(Instruction Set Simulator)!相較於現代處理器,CHIP-8 的指令集規模非常小,因此非常適合作為理解處理器取指(Fetch)、解碼(Decode)與執行流程(Execute)的入門專案。本篇將先介紹 CHIP-8 指令與機器碼的基本概念,接著實作二進位程式載入機制與最基本的 fetch 流程,為後續真正執行 CHIP-8 遊戲程式奠定基礎。


