欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
as86 man手冊的翻譯 -BlueLine Studio

as86的資料實(shí)在是少之又少。翻譯了man文檔....不過(guò)翻譯的很爛,就當練英文水平吧:)  Linus為什么要用它來(lái)寫(xiě)boot程序呢,nnd..翻譯真是一項辛苦的工作啊...特別是對翻譯的東西還不了解的時(shí)候....

 

 

as86(1)                                                                as86(1)

 

名稱(chēng)
      as86 - as86-8086..80386
處理器的匯編程序

概要格式
      as86  [-0123agjuw]  [-lm[list]]  [-n name]  [-o obj] [-b[bin]] [-s sym]
      [-t textseg] src

      as86_encap prog.s prog.v [prefix_] [as86 options]

描述
     as86
8086..80386處理器下的匯編程序,它所采用的語(yǔ)法與Intel/MS采取的語(yǔ)法類(lèi)似,而不同于廣泛運用于UNIX下的匯編語(yǔ)法(譯注,gas中的語(yǔ)法,AT&T匯編)

    命令行中的src參數可為‘-‘,代表對標準輸入進(jìn)行匯編。

    as86_encap是一個(gè)腳本,使用了as86匯編程序,并且把生成的二進(jìn)制文件轉為一個(gè)C文件prog.v,用于被連接或者包含到程序里,例如引導塊安裝程序。prefix_參數定義一個(gè)加到源文件中所有定義的變量的前綴,缺省前綴是源文件名。...

選項
     -0    
16位代碼段運行,當使用了高于8086指令集的指令時(shí)警告。

     -1     16位代碼段運行,當使用了高于80186指令集的指令時(shí)警告。

     -2     16位代碼段運行,當使用了高于80286指令集的指令時(shí)警告。

     -3     32位代碼段運行,不對任何指令發(fā)出警告信息(就算使用了486586的指令)

     -a     使匯編程序部分兼容于Minix asld.交換了[]()的用法,并且改變了一些16位跳轉與調用的語(yǔ)法("jmp @(bx)" 就成了一個(gè)合法的指令)

     -g     僅僅把global符號寫(xiě)入目標或者符號文件中

     -j     把所有短跳轉指令(譯注:8位跳轉稱(chēng)為短跳轉)換成相似的16位或者32位跳轉。并且把16位條件轉移指令換為一個(gè)條件短轉移命令與一個(gè)無(wú)條件長(cháng)跳轉組合

     -O     匯編程序會(huì )做幾遍額外的工作,以嘗試支持向前引用。最多30遍。不推薦使用

     -l     產(chǎn)生清單文件(list file),文件名寫(xiě)在選項后

     -m     把宏展開(kāi)后寫(xiě)在清單文件里

 

     -n     把模塊名寫(xiě)在選項之后(目標模塊,而非源文件)

     -o     生成目標文件,文件名寫(xiě)在選項之后

     -b     生成純二進(jìn)制文件,文件名寫(xiě)在后面。這是一個(gè)沒(méi)有頭部的純二進(jìn)制文件(譯注:類(lèi)似Dos下的comsys)如果沒(méi)有-s選項程序將會(huì )在內存地址0處開(kāi)始執行

     -s     生成一個(gè)ASCII碼符號文件,文件名寫(xiě)在選項后。很簡(jiǎn)單就能將其轉換,用于與-b選項生成的二進(jìn)制文件相關(guān)聯(lián)和封裝。如果二進(jìn)制文件不從地址0處開(kāi)始執行。那么符號文件表中前兩項分別代表起始地址與結束地址

     -u     假定未定義符號在未指定的段中被導入了

     -w-    允許匯編程序輸出警告信息

     -t n   把所有text段的數據放到段n+3.

AS86 資料
     
特殊字符

     *    本行起始地址

     ;! 注釋起始符,另外,在一行起始處的“unexpected”字符被認為是注釋?zhuān)ǖ侨匀粫?huì )被顯示在終端上)

     $      16進(jìn)制數的前綴, C風(fēng)格的前綴, 比如0x1234, 也可以使用.

     %      2進(jìn)制數的前綴.

     #      立即數的前綴.

     [ ]    間接尋址運算符.

            MASM不同,匯編程序沒(méi)有標識符的類(lèi)型信息,每個(gè)標識符僅僅代表是一個(gè)段地址和偏移地址。[]與立即數操作與傳統匯編程序一致

             :

                  mov     ax,bx

                  jmp     bx

             寄存器尋址, jmp指令把bx寄存器中的值拷到程序計數器中

                  mov ax,[bx]

                  jmp [bx]

             簡(jiǎn)單的寄存器間接尋址, jmp指令把bx寄存器值指向的內存單元的值拷到程序計數器中

                  mov ax,#1234

             立即數, 1234賦值給ax寄存器

                  mov ax,1234

                  mov ax,_hello

                  mov ax,[_hello]

             直接尋址,內存地址1234處的存儲字賦給ax寄存器。注意第三個(gè)指令并不十分嚴格,只是為了與asld保持兼容所以保留(譯注:若想將_hello標識符表示的值作為立即數使用,需要加上#前綴 #_hello

                  mov ax,_table[bx]

                  mov ax,_table[bx+si]

                  mov eax,_table[ebx*4]

 

                  mov ax,[bx+_table]

                  mov ax,[bx+si+_table]

                  mov eax,[ebx*4+_table]

             變址尋址。兩種形式都可以,但是我認為第一種要更正確些,但是我往往用第二種形式:)

      條件判斷

      IF, ELSE, ELSEIF, ENDIF

             數字比較

      IFC, ELSEIFC

             字符串比較 (str1,str2)

 

      FAIL .FAIL

             生成用戶(hù)錯誤

      段相關(guān)

      .TEXT .ROM .DATA .BSS
             
設置當前段??梢栽谇懊婕由详P(guān)鍵字.SECT

      LOC    數字表示段 0=TEXT, 3=DATA,ROM,BSS, 14=MAX.  連接器設定的段順序現在是0,4,5,6,7,8,9,A,B,C,D,E,1,2,3. 0 以及所有3以上的段都假設為text段。注意64K限制對3-14的段不適用。

     標識符類(lèi)型定義

      EXPORT PUBLIC .DEFINE
             
導出符號

      ENTRY  強制連接器在a.out文件里包含這個(gè)特殊符號

      .GLOBL .GLOBAL
             
將一個(gè)標識符定義為外部的,并且強制就算不使用,也必須導入

      EXTRN EXTERN IMPORT .EXTERN
             
導入外部標識符列表

NB: bin格式的文件不支持外部變量(譯注:關(guān)于這些格式,推薦參考一下NASM的手冊。純C論壇上有中文的NASM手冊)

      .ENTER 標識出舊式bin格式(obs)的程序入口

      數據定義

      DB .DATA1 .BYTE FCB
             1
字節的對象列表

      DW .DATA2 .SHORT FDB .WORD
             2
字節的對象列表

      DD .DATA4 .LONG
             4
字節的對象列表

      .ASCII FCC
           
寫(xiě)到輸出的Ascii碼字符串.

      .ASCIZ Ascii 寫(xiě)到輸出的Ascii碼字符串,末尾添加nul

      空間定義

      .BLKB RMB .SPACE
             
以字節為單位計算空間

      .BLKW .ZEROW
             
以字為單位計算空間 (一字2字節)

      COMM .COMM LCOMM .LCOMM
             
通用數據域定義

      其他實(shí)用偽指令

      .ALIGN .EVEN
             
對齊

      EQU    定義標識符(譯注:可參考NASM或者MASMEQU

      SET    定義可重定義的標識符

      ORG .ORG
             
定義匯編位置(譯注:即設置地址計數器的值,建議參考MASM的資料)

      BLOCK  定義匯編位置并且把原來(lái)的匯編位置入棧

      ENDB   回到剛才棧里記錄的匯編位置

      GET INCLUDE
             
插入新文件 (no quotes on name)

USE16 [cpu]
       
定義默認操作數大小為16位,參數表示程序代碼將會(huì )運行在什么樣的CPU(86,186, 286,386,486,586)指令集上.使用了指定指令集之上的指令會(huì )產(chǎn)生警告信息

USE32 [cpu]
       
定義默認操作數大小為32位,參數表示程序代碼將會(huì )運行在什么樣的CPU(86,186,     286,386,486,586)指令集上.使用了指定指令集之上的指令會(huì )產(chǎn)生警告信息

      END    標識出本文件停止匯編的地方

      .WARN  警告信息開(kāi)關(guān)

      .LIST  清單 on/off (1,-1)

      .MACLIST
             
宏清單 on/off (1,-1)

     宏的使用形式如下

          MACRO sax
             mov ax,#?1
          MEND
          sax(1)

     未實(shí)現/未使用的

      IDENT  Define object identity string.

      SETDP  Set DP value on 6809

      MAP    Set binary symbol table map number.

     寄存器
             BP BX DI SI
             EAX EBP EBX ECX EDI EDX ESI ESP
             AX CX DX SP
             AH AL BH BL CH CL DH DL
             CS DS ES FS GS SS
             CR0 CR2 CR3 DR0 DR1 DR2 DR3 DR6 DR7
             TR3 TR4 TR5 TR6 TR7 ST

     操作數類(lèi)型說(shuō)明
             BYTE DWORD FWORD FAR PTR PWORD QWORD TBYTE WORD NEAR

             nearfar關(guān)鍵字并沒(méi)有提供段間尋址編程的能力,所有”far”操作都是
             
都是通過(guò)顯式地使用以下指令得到的:指令: jmpi, jmpf, callf, retf,
            
等等. Near關(guān)鍵字可以被用來(lái)強制使用8038616位條件跳轉指令.
             ‘Dword‘
‘word‘ 能控制遠跳轉和遠調用的操作數的大小

     普通指令.
             
這些指令和其他8086匯編程序所提供的指令大體上差不多,(譯注:后面的
            
看不明白了.我的英語(yǔ)功底啊~555) the main exceptions being a few ‘
             Bcc‘ (BCC, BNE,  BGE,  etc)  instructions which are shorthands f
             or a short branch plus a long jump and ‘BR‘ which is the longest
             unconditional jump (16 or 32 bit).

      長(cháng)分支
             BCC  BCS  BEQ  BGE BGT BHI BHIS BLE BLO BLOS BLT BMI BNE BPC BPL
             BPS BVC BVS BR

      段間操作
             CALLI CALLF JMPI JMPF

     段修飾符指令
             ESEG FSEG GSEG SSEG

     字節操作指令
             ADCB ADDB ANDB CMPB DECB DIVB IDIVB IMULB  INB  INCB  MOVB  MULB
             NEGB  NOTB ORB OUTB RCLB RCRB ROLB RORB SALB SARB SHLB SHRB SBBB
             SUBB TESTB XCHGB XORB

     標準指令
             AAA AAD AAM AAS ADC ADD AND ARPL BOUND BSF BSR BSWAP BT BTC  BTR
             BTS CALL CBW CDQ CLC CLD CLI CLTS CMC CMP CMPS CMPSB CMPSD CMPSW
             CMPW CMPXCHG CSEG CWD CWDE DAA DAS DEC DIV DSEG ENTER  HLT  IDIV
             IMUL  IN  INC  INS  INSB INSD INSW INT INTO INVD INVLPG INW IRET
             IRETD J JA JAE JB JBE JC JCXE JCXZ JE JECXE JECXZ JG JGE JL  JLE
             JMP  JNA JNAE JNB JNBE JNC JNE JNG JNGE JNL JNLE JNO JNP JNS JNZ
             JO JP JPE JPO JS JZ LAHF LAR LDS LEA LEAVE LES LFS LGDT LGS LIDT
             LLDT  LMSW  LOCK  LODB  LODS  LODSB  LODSD LODSW LODW LOOP LOOPE
             LOOPNE LOOPNZ LOOPZ LSL LSS LTR MOV MOVS MOVSB MOVSD MOVSW MOVSX
             MOVW  MOVZX  MUL  NEG NOP NOT OR OUT OUTS OUTSB OUTSD OUTSW OUTW
             POP POPA POPAD POPF POPFD PUSH PUSHA PUSHAD PUSHF PUSHFD RCL RCR
             REP REPE REPNE REPNZ REPZ RET RETF RETI ROL ROR SAHF SAL SAR SBB
             SCAB SCAS SCASB SCASD SCASW SCAW SEG SETA SETAE SETB SETBE  SETC
             SETE SETG SETGE SETL SETLE SETNA SETNAE SETNB SETNBE SETNC SETNE
             SETNG SETNGE SETNL SETNLE SETNO  SETNP  SETNS  SETNZ  SETO  SETP
             SETPE  SETPO SETS SETZ SGDT SHL SHLD SHR SHRD SIDT SLDT SMSW STC
             STD STI STOB STOS STOSB STOSD STOSW STOW STR SUB TEST VERR  VERW
             WAIT WBINVD XADD XCHG XLAT XLATB XOR

      浮點(diǎn)
             F2XM1  FABS  FADD  FADDP FBLD FBSTP FCHS FCLEX FCOM FCOMP FCOMPP
             FCOS FDECSTP FDISI FDIV FDIVP  FDIVR  FDIVRP  FENI  FFREE  FIADD
             FICOM  FICOMP  FIDIV  FIDIVR FILD FIMUL FINCSTP FINIT FIST FISTP
             FISUB FISUBR FLD FLD1 FLDL2E FLDL2T FLDCW FLDENV  FLDLG2  FLDLN2
             FLDPI  FLDZ  FMUL  FMULP  FNCLEX FNDISI FNENI FNINIT FNOP FNSAVE
             FNSTCW FNSTENV FNSTSW FPATAN FPREM FPREM1 FPTAN  FRNDINT  FRSTOR
             FSAVE  FSCALE  FSETPM  FSIN  FSINCOS FSQRT FST FSTCW FSTENV FSTP
             FSTSW FSUB FSUBP FSUBR FSUBRP FTST FUCOM  FUCOMP  FUCOMPP  FWAIT
             FXAM FXCH FXTRACT FYL2X FYL2XP1

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
匯編常見(jiàn)偽指令
Pentium指令的執行周期數[轉]
怎樣寫(xiě)一個(gè)簡(jiǎn)單的操作系統?(原文標題:How to write a simple operating system)
匯編CMP指令應用
匯編語(yǔ)言——寄存器
Dwing寫(xiě)的471字節俄羅斯方塊(teris)匯編程序源代碼
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久