精華區beta Programming 關於我們 聯絡資訊
> ==>發信人: bert@Evergreen (哇哩咧...), 信區: programming > > 請教一下, 您學 ASM 時, 是在 window os 下(如 win2000 , winxp)跑的嗎 ? > > 通常做那些練習 ? > > 有那些練習(範例或習題) 是 c/c++ 很難做到的 ? 既然要學組語, 不就應 > > 該練習高階語言很難處理的 ? > > 1. Timer Setting & Interrupt > > 2. Block Data Move & DMA > > 3. Bit Map Graphic Display > > 4. 高階語言程式與組語程式的銜接 > > 5. serial line , parallel line I/O driver > > > 以上 1, 2, 3, 5 項都是用 C/C++ 就足以勝任愉快的東西 > 至於第 4 項, 則是翻翻 calling conversion 定義就可以知道該何銜接 > 沒什麼神奇難懂的地方 > 當然, 在第一項裡的 timer interrupt 是一個 time critical 的部份 > 可以用 assembly 做到最短的處理時間, 但並不表示 C/C++ 就做不到 > 在 RISC machine 上, 如當今最熱門的 ARM, assembly 只是用來為 > HLL 做事前準備, 把 memory controller 先初始化, DATA, BSS, Stack > 等 segment 設定好, 在進到 HLL 之後很少有整個 module 都用 > assembly 寫了, 最多也是用個一二十行的 in-line assembly 來做一些 > optimization ======= 在 Window OS 或 Linux 的 User mode 下可以讓一般 user program 做 1, 2, 3, 5 的程式練習嗎 ? 是否是用組語直接設定 I/O port 與 kernel memory space ? 還是透過 libray system call ? -- ◎ Origin: 中央松濤站□bbs.csie.ncu.edu.tw From: 140.115.6.234
UNARYvvv:真怪,又說寫組語要玩低階,又想要在 user mode 玩.. 04/17 02:25