個人電腦如何編譯匯編語言
A. 匯編用什麼軟體編譯啊
通常我都用記事本或者ultra-edit寫程序,然後進到命令行里,用masm編譯鏈接,最後用debug調試,這是標准流程啊。
匯編小站上介紹了一個工具叫masmplus,據說是一個類似於vc的IDE,你可以看下,上面對它的評價挺高的。
B. 怎樣用自己的電腦進行編程練習
1.首先,打開Microsoft Visual C++6.0這個軟體。(沒有的安裝一個,在網上有很多免費下載),點擊如圖圖標。

C. 使用普通電腦,可以用匯編語言編程嗎可以的話怎樣操作能出現C:\marm>masm祥細點
可以.
1.> 下載個masm軟體, 存c:\Masm下.
2.> 點桌面的開始->選運行, 鍵入CMD,點運行按鈕
3.> 彈出的黑底窗口, 下面操作都在這里做. 先鍵入C:回車
4.> 鍵入CD \MASM回車.
注: 不是非得按教程在DOS環境寫匯編的.
D. 如何編寫最簡單的匯編語言
首先明白編譯環境:以上4個exe程序必須在32機中運行,若是64位機,請參照dosbox0.74(如何在64位機中使用debug)使用方法。
了解計算機CPU原理:詳情請參照「80X86計算機組織」和「80X86的指令系統和定址方式」
首先有一道題:
求表達式Y=A*X+B-C的值,已知A、B、C分別存放在DA-1、DA-2、DA-3位元組單元,它們的值分別是:5 、 6、 7,X存放在INPUT位元組單元,結果Y放入JSJ_10位元組單元。
分析順序結構程序代碼:由記事本敲出來的
data segment da_1 db 5 da_2 db 6 da_3 db 7 input db 1 jsj_10 db 0data ends ;這一段在內存中定義了一個段,叫做data,並且其中存入了5個變數並且付入初值,db代表每個變數佔用1個位元組,若是dd則為字,為2個位元組code segment ;名字叫做code的段的定義,顯然這兒作為代碼段,當然code這個名字可以更改 assume cs:code,ds:data ;指定data為DS數據段,code為CS代碼段start: mov ax,data ;加法指令 mov ds,ax ;加法指令 mov al,da_1 ;加法指令
mov bl,input ;加法指令
mul bl ;乘法 add al,da_2 sub al,da_3 ;減法 mov jsj_10,al
exit: mov ah,4ch int 21h ;這兩行相當於ret(返回值),就像C語言中的return 0;
code ends end start
注釋: XXXX segment
.............
XXXX ends ;定義一個段
assume ds:XXXX 把XXXX段指定為ds(ds是段地址寄存器)
請先提前把masm edit debug link文件放入預定的文件夾,並把編寫的xxxx.asm代碼文件放入該文件夾,asm文件可用記事本寫成,並改格式txt為asm(有的看不到文件後綴.txt的請參照網路)

E. 怎樣在PC上編寫 匯編語言
如果只是抒寫,建一個文本,最後把格式改為.asm
如果要編譯並且運行它,那麼你就要下一個編譯軟體
現在比較好用的是用VC2005編譯和運行
網上很多下載的,可以下載~
F. 匯編語言編譯器是怎麼編寫的
編譯器自舉!搜索這個關鍵字
程序都是編譯器編譯的。這個是肯定的
至於第一款X語言編譯器是不是直接1010101010自己寫的那就不知道啦
一般開發編譯器的話。有兩條路選擇
1.利用yacc(或者其變種)&lex(詞法分析)-等工具自己生成語法模板
詞法語法都可以使用這些工具自己生成
然後自己編寫生成的中間碼和生成的機器碼就可以了
一般做編譯原理類似試驗都是如此的。許多編譯器也的確是這樣
2.自己寫詞法分析和語法分析。可以參考一些開源的編譯器
lcc-這個是ANSI C99標準的編譯器是開源的
或者nasm,watcom等編譯器到www.sf.net上不少開源的編譯器
總的來說。高級語言編譯器比較難寫
如果想快速寫出一個的話
可以採用第一種做法。利用工具生成語法詞法模板
先寫一個簡單的匯編編譯器比較簡單
開源的有nasm,jwasm(支持masm語法開源的編譯器)
http://www.japheth.de/JWasm.html
fasm(這款編譯器是自舉的.就是自己可以編譯自己),
http://flatassembler.net/
剩下的就是自己做好語言規則關鍵字map
引用高手的話。語言map做好了你的編譯器也做好一半了
剩下的都是機械性的工作了。
生成x86或者arm指令。
優化工作這個很難解釋.根據你所需要的做吧
畢竟可以做出一個無錯,又XX的編譯器已經很難得
你可以選擇使用現有的編譯器開發自己的編譯器
然後等到你的編譯器支持相當數量指令和成熟度的時候
使用自己的語法重新寫一遍編譯器.
這樣你就可以用自己的編譯器開發自己的編譯器了(是不是很邪惡?)
另外舉幾個例子
Delphi的編譯器是C++ Builder開發的。
而C++ Builder的IDE是Delphi開發的
C++ Builder的編譯器是C++ Builder開發的-這個就是編譯器自舉了。。Delphi和C++ Builder共享一個後端化優化器。
Delphi 早期的版本的編譯器是tasm直接編譯的。可見Anders的匯編功力多強悍(Anders也就是後來VJ++,C#,.NET工程的核心架構師.最關鍵的靈魂級人物)
VC++的編譯器是VC++開發的。很明顯這都說明了編譯器自舉
自己開發自己。如果一個編譯器可以做到自己編譯自己。那基本上就可以實現任何功能了。
關於編譯器開發的書籍可以看一下
龍書《編譯原理(第二版)》
虎書《現代編譯原理-C語言描述》
鯨書《高級編譯器設計與實現》
建議從鯨書看起。然後是龍書
再來是虎書--虎書裡面描述了許多現代編譯器(正如其名)技術
例如面向對象啦,優化,垃圾回收等等.
鯨書看完基本上就可以實現一個簡單的Tiny C編譯器了
然後在龍書鞏固,讀一下語言規范,自己看一些開源的匯編編譯器代碼
自己就可以嘗試做一個匯編語言編譯器了.等到技術提高了
在嘗試做一些高級語法識別,參考LCC代碼做一下ANSI C99的
C語言編譯器。再來就看你自己的興趣和領悟度拉
如果想支持C++的話就得要對編譯器做許多方便的研究
類似Java那種跨平台或者Ruby,Python等動態語言
虎書中也有描述。當然看自己功力了
G. 怎麼用電腦的命令符窗口進行匯編程序
詳細步驟如下:
將寫好的匯編代碼保存為1.asm
將1.asm復制到c盤下
點開始(即左下標那個windows圖標),找到運行,或(附件中的命令提示符)
找到運行後,輸入cmd 或 command
進入後輸入cd c:
輸入masm 1;(1後面有分號),然後回車
輸入link 1;然後回車
cls清屏然後回車
輸入1.exe,然後回車
完成
如果你需要debug,步驟如下:
1 - 8步同上
9.輸入debug 1.exe,然後回車
10 完成
通過以上步驟你便可以通過命令符窗口進行匯編程序。
匯編語言(assembly language)是一種用於電子計算機、微處理器、微控制器或其他可編程器件的低級語言,亦稱為符號語言。在匯編語言中,用助記符(Mnemonics)代替機器指令的操作碼,用地址符號(Symbol)或標號(Label)代替指令或操作數的地址。在不同的設備中,匯編語言對應著不同的機器語言指令集,通過匯編過程轉換成機器指令。普遍地說,特定的匯編語言和特定的機器語言指令集是一一對應的,不同平台之間不可直接移植。
許多匯編程序為程序開發、匯編控制、輔助調試提供了額外的支持機制。有的匯編語言編程工具經常會提供宏,它們也被稱為宏匯編器。
匯編語言不像其他大多數的程序設計語言一樣被廣泛用於程序設計。在今天的實際應用中,它通常被應用在底層,硬體操作和高要求的程序優化的場合。驅動程序、嵌入式操作系統和實時運行程序都需要匯編語言。
H. 匯編語言用什麼編寫
任何語言的源程序都是可以用「任何」文本編輯器生成的,唯一的要求:非格式化。也就是不要有字體、顏色、段落等等格式控制,換句話說,要純ASCII文本文件。
通常我就用「記事本」,在命令行方式下就用EDIT。
至於IDE,網上也有很多,但是沒見過幾個特別好用的,沒有集成調試(DEBUG)功能的話,還不如就用批處理。
I. 匯編語言程序設計在電腦上怎樣運行
這要看樓主要學那方面的匯編了,我們知道,匯編語言是針對硬體直接操作的,因此,每一種CPU都有自己的硬體結構,因此,匯編語言也有所不同。不同的匯編需要裝不同的編譯器,連接定位器軟體。一般用匯編的晶元有8086系列的,MCS51系列的,pic系列的。分別有著不同的開發軟體,可以進行語法檢查和編譯工作。但樓主要驗證是否正確,還是要燒到相應的晶元中具體執行,才說的准。
J. 怎麼用記事本編寫匯編語言源程序(擴展名為:ASM),功能為在DOS環境下循環輸出字元串「Hello World」3次
直接在記事本裡面編寫 匯編語言
data segment
;DATA HERE
String db 'Hello World!$'
data ends
stack segment stack
db 20 p('STACK')
stack ends
;-------------------------------------------------
code segment
assume ds:data,es:data,ss:stack,cs:code
.586p
start:
mov ax, data
mov ds, ax
mov es, ax
;CODE HERE
mov dx, offset String
mov ah, 09h
int 21h
mov ax, 4c00h
int 21h
code ends
end start
存為hello.asm文件即可
