# [CS:APP](https://hackmd.io/@sysprog/CSAPP) 第 3 章重點提示和練習 ## Machine Programs - [ ] [Machine Prog: Basics](https://www.cs.cmu.edu/~213/lectures/05-machine-basics.pdf) / [video](https://scs.hosted.panopto.com/Panopto/Pages/Viewer.aspx?id=6e410255-3858-4e85-89c7-812c5845d197) * 搭配閱讀 [你所不知道的C語言: 編譯器和最佳化原理篇](https://hackmd.io/s/Hy72937Me) * 搭配閱讀 [你所不知道的C語言: 動態連結器](https://hackmd.io/s/HkK7Uf4Ml) * 搭配閱讀 [你所不知道的C語言: 連結器和執行檔資訊](https://hackmd.io/s/SysiUkgUV) * 搭配閱讀 [你所不知道的C語言: 執行階段程式庫 (CRT)](https://hackmd.io/s/Hkcr5cn97) - [ ] [Machine Prog: Control](https://www.cs.cmu.edu/~213/lectures/06-machine-control.pdf) / [video](https://scs.hosted.panopto.com/Panopto/Pages/Viewer.aspx?id=fc93c499-8fc9-4652-9a99-711058054afb) 64-bit 暫存器名稱,如 %rax, %rdi `0x104` 記憶體位址內含值 `$0123` 常數 `(%rax)` : 以暫存器內含值進行 dereference 的記憶體位址數值 `(rb, ri, s)` : 對 reg base + (reg index*s) 的位置取值 * Page `159`: switch-case 和 jump table * 搭配閱讀 [你所不知道的C語言: goto 和流程控制篇](https://hackmd.io/s/B1e2AUZeM) ###### tags: `cs:app`, `csapp`
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.