學會組合語言後是否能將組合語言轉換成機器碼再寫程式?
用機器碼寫程式是否就不需要編譯器了?
如何將組合語言(如NASM)轉成機器碼?
2007-11-23 18:14:36 · 5 個解答 · 發問者 Anonymous in 電腦與網際網路 ➔ 程式設計
電腦只看的懂機械碼沒錯,你知為何人們不直接用機器碼來寫嗎? 因為可讀性很低 ,你寫好程式過一段時間 還可能要花不少時間研究才看的懂,你有將你寫的原始程式轉成.lst檔 開來看看過嗎? 當你開啟來看時 ,原始程式 旁邊的那些2進制的碼 就是機器碼,光看那個 你不會很累嗎@@
通常是寫好組語的原始程式後 ,再利用masm這組譯程式 組譯成目的檔 .obj 然後再經鍵結程式link 來 鍵結成執行檔.exe
而目的檔.obj 就是將原始程式轉成電腦看的懂的機器碼了!
所以根本也不需要你寫,同時也沒人再用機器碼來寫程式的!
看的出 你似乎還沒學組語... 因為連原始程式 用什麼組譯程式來組及 鍵結都不知 ,那你沒作這些動作 又如何執行程式?
顯然的是還沒學= = 否則不會有這樣的疑問
2007-11-24 03:50:23 · answer #1 · answered by eric 7 · 0⤊ 0⤋
學會組合語言後是否能將組合語言轉換成機器碼再寫程式?
可以阿 只是很不好算而已
用機器碼寫程式是否就不需要編譯器了?
理論上是的 但是實際上 你必須考慮的還有很多
例如系統所接受的執行檔 檔案格式
如何將組合語言(如NASM)轉成機器碼?
組譯之後 那個exe檔就是機器碼了
2007-11-25 00:17:45 · answer #2 · answered by ? 4 · 0⤊ 0⤋
是可以寫啦, 很累就是了...而且debug時會很慘~
以前在學校時用SICXE machine code寫了一個算π的小程式給
SICXE simulator執行, 小小一個程式花我好久的時間...> <"
後來又寫了SICXE assembler,
同樣是算π的程式, 用組合語言寫起來就容易多了~
更早之前還有人用打孔機寫程式...更慘~(應該是算bit的)
小弟剛進學校時還看過那種機器...= ="
2007-11-24 09:36:48 · answer #3 · answered by 悶騷小伙子 7 · 0⤊ 0⤋
參考一下這兩篇說明
assembly language
http://zh.wikipedia.org/w/index.php?title=%E7%B5%84%E5%90%88%E8%AA%9E%E8%A8%80&variant=zh-tw
與machine language
http://zh.wikipedia.org/w/index.php?title=%E6%A9%9F%E5%99%A8%E8%AA%9E%E8%A8%80&variant=zh-tw
你會比較了解這兩者之差異,與你想問的問題之答案
2007-11-23 22:35:54 · answer #4 · answered by ㄚ旺 5 · 0⤊ 0⤋
名詞都key錯...應該是 組譯器 & MASM
如此粗心...用機械碼死路一條
機械碼是一個bit都不能錯的
其他...請google 系統程式
就可找到很多資料
2007-11-24 02:02:12 補充:
報歉
確實有NASM這種assembler
2007-11-23 20:19:49 · answer #5 · answered by duofoldest 4 · 0⤊ 0⤋