freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

nasm中文手冊(cè)(存儲(chǔ)版)

  

【正文】 39。NASM使用跟MASM不同的浮點(diǎn)寄存器名:MASM叫它們39。,39。nowait39。MASM的程序員必須使用39。? equ 039。第三章 NASM語(yǔ)言 NASM源程序行的組成。lodsb39。39。~39。_39。eax39。REP39。A1639。你也可以使用段寄存器名作為指令前綴: 代碼39。這樣的指令,它沒(méi)有操作數(shù),但還是可以有一個(gè)段前綴, 對(duì)于39?;?9。,39。符號(hào)),或者它們可以是有效的地址(),常數(shù)(),或表達(dá)式。DWORD39。DB39。RESB39。REST39。 `DB39。 just the byte 0x55 db 0x55,0x56,0x57 。 。 。 extendedprecision float39。, `RESW39。或類似的東西:現(xiàn)在我們所描述的正是NASM自己的方式。:包含其他二進(jìn)制文件。 skip the first 1024, and 。39。39。注意‘EQU’的操作數(shù)也是一個(gè)嚴(yán)格語(yǔ)法的表達(dá)式。語(yǔ)法的等價(jià)物。times 64$+buffer db 39。之間并沒(méi)有顯著的區(qū)別,除了后者在匯編時(shí)會(huì)快上一百倍。()注意39。要重復(fù)多于一行的代碼,或者一個(gè)宏,使用預(yù)處理指令39。 ie [label1+(label1label2)]有些形式的有效地址在匯編后具有多種形式;在大多數(shù)情況下,NASM會(huì)自動(dòng)產(chǎn)生最小化的形式。和39。BYTE39。如果你想讓39。有一種特殊情況,‘[byte eax]39。[eax]39。[eax+eax]39。按字面意思被處理。,39。前綴在標(biāo)識(shí)符中具有雙重職責(zé) (),所以一個(gè)以39。 hex again: the 0 is required mov ax,0xa2 。 產(chǎn)生的常數(shù)不會(huì)是`0x6162636439。指令理解的字符常 數(shù)形式() 字符串常數(shù)。hello39。,39。 doubleword string constant dd 39。ninechars39。ab39。的操作數(shù)時(shí)被處理成字符串。它們以傳統(tǒng)的形式表 達(dá):數(shù)值,然后一個(gè)句點(diǎn),然后是可選的更多的數(shù)值,然后是選項(xiàng)39。 一些例子: dd 。所以,NASM為了能夠處理浮點(diǎn)運(yùn)算,它必須含有它自己的一套完整的浮點(diǎn)處理例程,它大大增加了匯編器的大小,卻獲得了并不多的好處。$$39。$$39。是完全相同的。: 位與運(yùn)算符。 提供位左移, 跟C中的實(shí)現(xiàn)一樣,所以39。 and `39。, `/39。39。是帶 符號(hào)除。%39。39。SEG39。SEG39。操作符來(lái)實(shí)現(xiàn)這個(gè)功能。~39。這些只作用于一個(gè)參數(shù)的一元運(yùn)算符是NASM的表達(dá)式語(yǔ)法中優(yōu)先級(jí)最高的。 同ANSI C一樣,NASM不保證對(duì)帶符號(hào)模操作執(zhí)行的操作的有效性。是無(wú)符號(hào)除,39。*39。運(yùn)算符提供完整的普通加減法功能。在NASM中,這樣的位移總是無(wú)符號(hào)的,所以位移后,左側(cè)總是以 零填充,并不會(huì)有符號(hào)擴(kuò)展。: 位移運(yùn)算符。 `amp。給出一個(gè)位級(jí)的或運(yùn)算,所執(zhí)行的操作與機(jī)器指令39。來(lái)表示無(wú)限循環(huán)。$39。這是因?yàn)镹ASM被設(shè)計(jì)為可移植的,盡管它常產(chǎn)生x86處理器上的代碼,匯編器本身卻可以和ANSI C編譯器一起運(yùn)行在任何系統(tǒng)上。dd 39。DT39。同樣的,三字符或四字符常數(shù)會(huì)在作為39。的常數(shù)會(huì)被處理成字符串常量,因?yàn)樗鳛樽址?shù)的話,還不夠短,因?yàn)?,如果不這樣,那39。 。ninechars39。,39。它被處理成最大長(zhǎng)度的字符常數(shù)之間的連接。這也是奔騰的39。一個(gè)具有多個(gè)字符的字符常數(shù)會(huì)被littleendian order,如果你編寫: mov eax,39。 decimal mov ax,0a2h 。來(lái)表示十六進(jìn)制數(shù),注意,39。,39。關(guān)鍵字改變這種行為:`[nosplit eax*2]39。[eax*2]39。會(huì)帶一個(gè)doubleword的0偏移。比如:39。NOSPLIT39。具有不同的缺省段寄存器。NASM具有一種隱含的機(jī)制,它會(huì)對(duì)39。更復(fù)雜一些的有效地址,比如含有多個(gè)寄存器的,也是以同樣的方式工作: mov eax,[ebx*2+ecx+offset] mov ax,[bp+di+8]NASM在這些有效地址上具有進(jìn)行代數(shù)運(yùn)算的能力,所以看似不合法的一些有效地址使用上都是沒(méi)有問(wèn)題的: mov eax,[ebx*5] 。64$+buffer39。TIMES39。跟39。的參數(shù)不僅僅是一個(gè)數(shù)值常數(shù),還有數(shù)值表達(dá)式,所以你可以這樣做:buffer: db 39。它在某種程序上是NASM的與MASM兼容匯編器的39。$39。msglen39。EQU39。 include the whole file incbin ,1024 。 reserve a word realarray resq 10 。NASM不支持MASM/TASM的扣留未初始化空間的語(yǔ)法39。類的偽指令: 聲明未初始化的數(shù)據(jù)。 floatingpoint constant dq 。s just a number) dw 39。,13,10,39。和`DT39。TIEMS39。RESQ39。DQ39。 偽指令是一些并不是真正的x86機(jī)器指令,但還是被用在了instruction域中的指令,因?yàn)槭褂盟鼈兛梢詭?lái)很大的方便。 this sets st1 := st1 + st0 fadd to st1 。的語(yǔ)法風(fēng)格,在這種風(fēng)格中,寄存器名前必須加上一個(gè)39。,39。,39。但是對(duì)于象39。O3239。REPNZ39。LOCK39。前綴,以表明它被作為一個(gè)標(biāo)識(shí)符而不是保留字來(lái)處理。.39。39。會(huì)讓NASM在你定義了一個(gè)不以冒號(hào)結(jié)尾的label時(shí)警告你。label后面的冒號(hào)同樣也是可選的。還是一個(gè)不被支持的語(yǔ)法。?39。TWORD39。等。叫它們39。另外程序員需要在調(diào)用外部函數(shù)時(shí)在需要的編寫CALL FAR指令,并必須跟蹤哪些外部變量定義是far,哪些是near。RETN39。操作符。MOVSW39。CMPS39。LODS39。時(shí)會(huì)記住類型,然后就可以隱式地合用39。同樣,39。處理成一個(gè)無(wú)操作符。mov ax,offset bar39。EQU39。 NASM的設(shè)計(jì)思想是語(yǔ)法盡可能簡(jiǎn)潔。或39。foo39。 MASM用戶速成。!s!ic:\nasmlib39。dNAME=my39。選項(xiàng)來(lái)定義包含文件的標(biāo)準(zhǔn)搜索路徑。環(huán)境變量。這種警告信息缺省狀況下是打開(kāi)的。包含源文件行中沒(méi)有指令卻定義了一個(gè)沒(méi)有結(jié)尾分號(hào)的label的警告。w+orphanlabels39。 有些情況甚至還要寬松:他們僅僅是一些值得提供給用戶的信息。) (*) 還有很多...需要更多的關(guān)于操作符的信息。,`else39。預(yù)處理操作符被支持,它同TASM的ARG操作符相似。 (*)擴(kuò)號(hào)中的尺寸替換被支持。改為39。關(guān)鍵字沒(méi)有用的時(shí)候重載指定的大小(),如果2=n=3,會(huì)有5*n遍,而不是n遍。 (*)39。這意味著如果你有一個(gè)復(fù)雜的源文件需要多于兩遍的匯編。 選項(xiàng): 不需要預(yù)處理。 NASM允許預(yù)處理器獨(dú)立運(yùn)行。()在此時(shí)的含義。定義成了常量12。時(shí),源文件行上必須包含一個(gè)label。 skip the first 1024 bytes incbin ,1024,512 。 array of ten reals `INCBIN39。DW ?39。 `RESB39。 doubleprecision float dt 。ab39。$39。經(jīng)常被用來(lái)在輸出文件中聲明已初始化 的數(shù)據(jù),你可以多種方式使用它們: db 0x55 。前綴。和39。和‘DT’,它們對(duì)應(yīng)的未初始化指令是39。當(dāng)前的偽指令有39。 so does this幾乎所有的浮點(diǎn)指令在引用內(nèi)存時(shí)必須使用以下前綴中的一個(gè)39。%39。bp39。LOCK39。LODSB39。關(guān)于使用它們的一個(gè)例子在第九章給出。通常,支持顯示的地址尺寸和操作數(shù)尺寸前綴39。,39。這樣的話,如果你想到鏈接進(jìn)來(lái)的其他模塊中定義了一個(gè)符號(hào)叫39。,(具有特殊含義,),39。,39。labels中的有效的字符是字母,數(shù)字,39。(注意到,這意味著如果你想要寫一行39。另外,宏與操作符的工作方式也與MASM完全不同,可以到參閱第4,第5章??醋魇欠?hào)名稱中的一個(gè)有效的字符,所以你可以編寫這樣的代碼39。NASM以跟MASM不同的一種方式聲明未初始化的內(nèi)存。,NASM現(xiàn)在以跟MASM兼容匯編器同樣的方式處理39。039。 浮點(diǎn)處理上的不同?;?9。NASM不會(huì)記住你往段寄存器里放了什么值,也不會(huì)自動(dòng)產(chǎn)生段替換前綴。,和39。,39。,39。mov var, 239。mov ax,es:[di]39。這個(gè)問(wèn)題在39。同NASM的語(yǔ)法39?;蛞粋€(gè)變量的地址;如果要取變量39。它的一個(gè)設(shè)計(jì)目標(biāo)是,它將在被使用的過(guò)程中,盡可能得讓用戶看到一個(gè)單行的NASM代碼時(shí),就可以說(shuō)出它會(huì)產(chǎn)生什么操作碼。OS/239。,39。如果你曾使用MASM寫程序,或者使用在MASM兼容模式下使用TASM, 或者使用39。跟39。和39。環(huán)境變量的值是通過(guò)空格符分隔的,所以值39。如果你定義了一個(gè)叫39。 `v39。缺省狀況下,NASM不輸出此類警告?;蛘咭?9。所以,NASM支持39。 `w39。, `endif39。 (*) `%local39。在TASM兼容模式中,方括號(hào)中的尺寸替換改變了操作數(shù)的尺寸大小,方括號(hào)不再支持NASM語(yǔ)法的操作數(shù)地址。39。注意這是一個(gè)大寫的O,和小寫的o是不同的,小寫的o是指定輸出文件的格式,可參閱 `t39。O139。你必須告訴它。 如果NASM被用作編譯器的后臺(tái),那么假設(shè)編譯器已經(jīng)作完了預(yù)處理,并禁止NASM的預(yù)處理功能顯然是可以節(jié)約時(shí)間,加快編譯速度。使用39。FOO39。 39。這種形式的操作符在選擇編譯時(shí)操作中非常有用,它們可以用39。的另一種實(shí)現(xiàn),39。選項(xiàng)操持一致性,該選項(xiàng)也可以被寫成39。nasm 39。()為了與絕大多數(shù)C編譯器的Makefile保持兼容,該選項(xiàng)也可以被寫成39。會(huì)導(dǎo)致39。i39。E39。它可以在39。 選項(xiàng): 把錯(cuò)誤信息輸出到39。 在39。nasm f format y39。得到。f39。在發(fā)布的NASM版本中,缺省的輸出格式總是39。選項(xiàng),它能讓你指定你的輸出文件的文件名,你使用39。39。.o39。aout39。obj39。(Linux的39。請(qǐng)輸入:file nasm(在nasm二進(jìn)制文件的安裝目錄下使用),如果系統(tǒng)輸出類似下面的信息:nasm: ELF 32bit LSB executable i386 (386 and up) Version 1那么你的系統(tǒng)就是39。匯編成純二進(jìn)制格式的文件39。第二章 運(yùn)行NASM NASM命令行語(yǔ)法要匯編一個(gè)文件,你可以以下面的格式執(zhí)行一個(gè)命令:nasm f format filename [o output]比如,nasm f elf 會(huì)把文件39。39。rdoff39。39。ndisasm39。到它的目錄下,輸入39。 在unix下安裝NASM如果你得到了Unix下的NASM源碼包39。目錄還會(huì)包含完整的NASM源代碼,你可以選擇一個(gè)Makefiles來(lái)重新構(gòu)造你的NASM版本。nasm39。39。的Intel處理器上的,另外的是16位的39。w39。39。郵件列表。公告被發(fā)布至`39。更多的信息還可以在`39。但請(qǐng)您發(fā)給我們bug報(bào)告,修正意見(jiàn),和其他有用的信息,還有其他任何你手頭有的對(duì)我們有用的信息(感謝所有已經(jīng)這樣在做了的人們),我們還會(huì)不斷地改進(jìn)它。MASM39。gcc39。39。3DNow!39。它的語(yǔ)法設(shè)計(jì)得相當(dāng)?shù)暮?jiǎn) 潔易懂,和Intel語(yǔ)法相似但更簡(jiǎn)單。ELF39。它支持相當(dāng)多 的目標(biāo)文件格式,包括Linux和39。,微軟16 位的39。,39。 and 39。a8639。一直就提供給它絕對(duì)正確的代碼,所以它的 錯(cuò)誤檢測(cè)功能相當(dāng)弱,還有就是對(duì)于任何一個(gè)想真正利用它寫點(diǎn)東西的人來(lái)講, 它的語(yǔ)法簡(jiǎn)直太可怕了,并且你無(wú)法在里面寫正確的16位代碼。TASM39。只有在該許可條件下你才可以使用NASM。和`anakin39。 如果你想了解NASM beta版的發(fā)布,和當(dāng)前的開(kāi)發(fā)狀態(tài),請(qǐng)通過(guò)在`39。39。,還有NDISASM可執(zhí)行文件39??蓤?zhí)行格式。NASM運(yùn)行時(shí)需要的唯一文件就是它自己的可執(zhí)行文件,所以可以拷貝39。環(huán)境變量中去。中,所以如果你需要節(jié)省空間,你可刪掉它,但是,你可能需要保留文檔或測(cè)試程序。, `39。/usr/local/src39。一旦NASM被自動(dòng)配置好后,你可以輸入39。把它們安裝到39。prefix39。來(lái)構(gòu)造它們,并使用39。,然后輸入39。ELF39。l39。f elf39。) 就像其他的Unix編譯器與匯編器,NASM在碰到錯(cuò)誤以前是不輸出任何信息的,所以除了出錯(cuò)信息你看不到任何其他信息。),它會(huì)去掉你的源文件名的39。,39。,它會(huì)使用39。如果輸出文件已經(jīng)存在,NASM會(huì)覆蓋它,除非它的文件名與輸入文件同名,在這種情況下,
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1