抄好了乙份boot.s**,又搞定了編譯器,接下來小結一下編譯與鏈結。
先用as86編譯器把彙編**編譯成.o檔案:
grey@desktop-3t80npq:/mnt/e/01_workspace/15_linux/01_kernal/03_my_test_code$ls
boot.s
grey@desktop-3t80npq:/mnt/e/01_workspace/15_linux/01_kernal/03_my_test_code$as86 -0 -a -o boot.o boot.s
grey@desktop-3t80npq:/mnt/e/01_workspace/15_linux/01_kernal/03_my_test_code$ls
boot.o boot.s
grey@desktop-3t80npq:/mnt/e/01_workspace/15_linux/01_kernal/03_my_test_code$ld86 -0 -s -o boot boot.o
grey@desktop-3t80npq:/mnt/e/01_workspace/15_linux/01_kernal/03_my_test_code$ls
boot boot.o boot.s
grey@desktop-3t80npq:/mnt/e/01_workspace/15_linux/01_kernal/03_my_test_code$ls -l
total 1
-rwxrwxrwx 1 rootroot 544 aug 20 18:55 boot
-rwxrwxrwx 1 rootroot 232 aug 20 18:41 boot.o
-rwxrwxrwx 1 rootroot 554 aug 20 16:05 boot.s
這基本上就已經結束了,但是檔案其實並不是給linux編譯的,帶著乙個minix的介面,因此也就會稍微大一些。如果進行相應的修改後,寫入軟盤應該就可以直接執行看到啟動效果了。
匯程式設計序的Hello world
一 匯程式設計序的hello world x86 at t data msg ascii hello world,hello at t asm n len msg text global start start movl len,edx 顯示的字元數 movl msg,ecx 緩衝區指標 movl ...
VS2008編譯匯程式設計序的問題
在vs2008 pro裡已經整合了masm,經過相關設定後,編譯出了程式,但是執行後,說少msvcr90.dll 39944 然後自己寫了個c的程式在depend中對比了下兩個的匯入表。39946 39945 那個testprintf是執行正常的。雖然兩個都有引入msvcr90.dll 問下,這是為...
自寫的匯程式設計序
哈哈,今個兒真高興呀!現在特地將自己編的程式掛到部落格上,還請各位高手多多指點!同時也給自己及所有正在研究學習彙編的朋友鼓鼓勁!以下是我自己寫的程式 assume cs codesg data segment db 1975 1976 1977 1978 1979 1980 1981 1982 19...