※ 本文為 zbali.bbs. 轉寄自 ptt.cc 更新時間: 2018-11-14 10:28:05
看板 Gossiping
作者 pponywong (pony)
標題 Re: [問卦] 資工系的魔王科是什麼啊
時間 Wed Nov 14 10:18:33 2018


※ 引述《timmy999 (憤怒a阿宅)》之銘言:
: 我啦 學店資工
: 大一就只有線代 微積分和計概而已
: 還感受不太到資工很難念的感覺
: 有沒有學長姐分享一下 資工有哪些勸退科目

資工比較難的都是實作

Compiler 我覺得就很難
前面要讀 LL LR LALR compiler 架構
實作要用 flex (lex) 寫 regular expression 抓 keyword
用 bison (yacc) 寫 CFG (context free grammer)
這邊是 frontend

接下來是 backend
就是分析 語法樹 (abstract syntax tree)
做最佳化 產生 machine code


OS 是另外一種難 恐龍書講的都很簡單
實作 OS 會比較困難 要寫 bootloader 還有組合語言
開 protected mode 設定 MMU
不過也不會寫很深入 之後會往 linux, windows 核心去研究

要懂 linux driver
kernel space 端要會 ioremap, page allocate,
                    kernel malloc, workqueue, irq handler
user space 端要會寫 char device interface, open(), close(), mmap()

還有要了解 ELF檔格式,
system call, pthread, socket, execv 雜七雜八的一堆系統 API

windows 端也是要理解 PE檔格式, Win API


計算理論是另外一種難度
整天在討論圖靈機 證明甚麼問題是 NP hard,
甚麼問題是 NP complete
這門科目我沒很在行 所以也不能跟你說甚麼


3D圖學 也是一個大坑
從 3D pipeline 開始學起

從 vertice, tex V/U, color, diffuse light, ambient light
viewport 這些資訊
自己用 rendering equation 畫出 3D 場景

後期會介紹 OpenGL 跟 DirectX3D (D3D 學校比較少教)
然後就是寫 vertex shader, pixel shader

還有就是繼續研究 rendering equation
看看有什麼效果是可以改進的
像是 子表面散射 SSS (subsurface scattering)
利用 Radiosity 作場景的著色
或是用 PRT (precomputed radiance transfer)
計算場景的 球諧函數 SH (spherical harmonics)
這邊就需要良好的線性代數作為背景

你也可以研究物理計算
前端先做 collision detection, 可以用二元樹 或是 多元樹 作
這需要好的資料結構概念

後端確認碰撞後
寫 constraint 作成 LCP (linear complementarity problem)
計算物體的運動方向 這也需要好的數學觀念

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.137.55.209
※ 文章代碼(AID): #1RwuNyW1 (Gossiping)
※ 文章網址: https://www.ptt.cc/bbs/Gossiping/M.1542161916.A.801.html
※ 編輯: pponywong (220.137.55.209), 11/14/2018 10:19:33

--
※ 看板: ott 文章推薦值: 0 目前人氣: 0 累積人氣: 134 
作者 pponywong 的最新發文:
點此顯示更多發文記錄
分享網址: 複製 已複製
guest
x)推文 r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇