O語(yǔ)言開(kāi)發(fā)環(huán)境是O匯編語(yǔ)言的一款匯編語(yǔ)言套件,O匯編語(yǔ)言一個(gè)最大顯著的特點(diǎn)是支持語(yǔ)言配置,使得它可以支持所有你想支持的語(yǔ)言,當(dāng)然,O匯編語(yǔ)言的初衷是為了支持中文,所以它可以非常好的支持中文匯編。這里給大家提供的O語(yǔ)言開(kāi)發(fā)環(huán)境包含有匯編代碼編譯、鏈接、資源編輯、反匯編及支持調(diào)試功能的集成開(kāi)發(fā)環(huán)境(IDE),IDE可以方便地編寫(xiě)匯編代碼、調(diào)試現(xiàn)有O匯編程序、或者進(jìn)行中文反匯編其它程序。
O匯編語(yǔ)言簡(jiǎn)介
什么是匯編語(yǔ)言。匯編語(yǔ)言(Assembly Language)又叫組合語(yǔ)言,是面向機(jī)器的程序設(shè)計(jì)語(yǔ)言。在傳統(tǒng)的匯編語(yǔ)合中,用助記符(Memoni)代替操作碼,用地址符號(hào)(Symbol)或標(biāo)號(hào)(Label)代替地址媽。這樣用符號(hào)代替機(jī)器語(yǔ)言的二進(jìn)制碼,就把機(jī)器語(yǔ)言變成了匯編語(yǔ)言。于是匯編語(yǔ)言亦稱(chēng)為符號(hào)語(yǔ)言。使用匯編語(yǔ)言編寫(xiě)的程序,機(jī)器不能直接識(shí)別,要由一種程序?qū)R編語(yǔ)言翻譯成機(jī)器語(yǔ)言,這種起翻譯作用的程序叫匯編程序,匯編程序是系統(tǒng)軟件中語(yǔ)言處理系統(tǒng)軟件。匯編語(yǔ)言把匯編程序翻譯成機(jī)器語(yǔ)言的過(guò)程稱(chēng)為匯編。
顧名思義O匯編語(yǔ)言也是一門(mén)匯編語(yǔ)言,它具有傳統(tǒng)匯編語(yǔ)言的基本特點(diǎn),也有與它們諸多不同之處。O匯編語(yǔ)言一個(gè)最大顯著的特點(diǎn)是支持語(yǔ)言配置,使得它可以支持所有你想支持的語(yǔ)言,當(dāng)然,O匯編語(yǔ)言的初衷是為了支持中文,所以它可以非常好的支持中文匯編。如果你已經(jīng)習(xí)慣了其它英文的匯編模式,比如你喜歡用EAX、EBP類(lèi)似這樣的方式來(lái)命名寄存器,不要緊,只需要修改一下語(yǔ)言配置文件,這可以輕松做到。O匯編語(yǔ)言另一個(gè)顯著的特點(diǎn)是指令使用非常直觀(guān)和人性化,在不缺失匯編語(yǔ)言靈活性的情況下,使匯編語(yǔ)句的語(yǔ)意可以很直觀(guān)地表現(xiàn)出來(lái),這主要得益于用了一些象征性的符號(hào),使得匯編語(yǔ)句不再是千篇一律的 (指令 寄存器,內(nèi)存操作數(shù)) 這樣的格式,而是更像 (寄存器 = 內(nèi)存操作數(shù))這樣的格式,不但容易理解,而且便于記憶,使匯編語(yǔ)言不再那么枯燥,使人一團(tuán)霧水。
位模式說(shuō)明
.位模式 32 ∥指明是16位、32位還是64位的代碼
由于計(jì)算機(jī)使用16位地址、32位地址或者是64位地址時(shí)所使用的指令及寄存器都有很大區(qū)別,所以必須指明你所寫(xiě)的代碼將被運(yùn)行在哪種模式下。由于目前常用的程序都運(yùn)行在32位模式下,O匯編語(yǔ)言對(duì)16位程序的支持還沒(méi)有進(jìn)行嚴(yán)格的測(cè)試,而64位的程序目前也還不支持。這兩種模式在以后開(kāi)發(fā)過(guò)程中都會(huì)得到完善的支持。
保存數(shù)據(jù)的段
根據(jù)數(shù)據(jù)不同屬性,保存數(shù)據(jù)的段通常有以下三種:
∥數(shù)據(jù)段
︻
∥數(shù)據(jù)段中的數(shù)據(jù) 這段數(shù)據(jù)被加載到可讀可寫(xiě)的內(nèi)存中
︼
∥只讀段
﹃
∥只讀段中的數(shù)據(jù) 這段中的數(shù)據(jù)被加載到只讀的內(nèi)存中,如果要對(duì)這段空間進(jìn)行寫(xiě)操∥作會(huì)出現(xiàn)寫(xiě)保護(hù)異常
﹄
∥預(yù)留段
﹁
∥預(yù)留段中的空間,這段空間分配在可讀可寫(xiě)的內(nèi)存中,但它只在加載程序,準(zhǔn)備運(yùn)行∥時(shí)才分配,所以這段中的空間只是先定義,而不能進(jìn)行靜態(tài)初始化
﹂