.386.model flat,stdcall.stack 4096
ExitProcess PROTO,dwExitCode:DWORD.data
var1 DWORD 10000h
var2 DWORD 20000h.code
main PROCmov eax,var1add eax,var2mov eax,var2sub eax,var1neg eaxneg var1INVOKE ExitProcess,0
main ENDP
END main
2: ASM26 : 僅用PUSH和POP指令來交換EAX和EBX的值
.386.model flat,stdcall.stack 4096
ExitProcess PROTO,dwExitCode:DWORD.code
main PROCmov eax,10mov ebx,20push eaxpush ebxpop eaxpop ebxINVOKE ExitProcess,0
main ENDP
END main
.386.model flat,stdcall.stack 4096
ExitProcess PROTO,dwExitCode:DWORD.code
main PROCcall proc_1INVOKE ExitProcess,0
main ENDPproc_1 PROCsub esp,8mov esi,espmov eax,2000hmov [esi],eaxadd esi,4mov eax,1000hmov [esi],eaxadd esp,8ret
proc_1 ENDP
END main
4: 用變址尋址方式將雙字數組中的元素復制到同一個數組中其前面的一個位置上
.386.model flat,stdcall.stack 4096
ExitProcess PROTO,dwExitCode:DWORD.data
arrayD DWORD 1,2,3,4,5.code
main PROCmov ecx,LENGTHOF arrayD -1mov esi,0mov ebx,arrayD[esi * TYPE arrayD]inc esi
L1: mov eax,arrayD[esi * TYPE arrayD]dec esimov arrayD[esi * TYPE arrayD],eaxadd esi,2loop L1dec esimov arrayD[esi * TYPE arrayD],ebxINVOKE ExitProcess,0
main ENDP
END main
5: 一組語句顯示子程序的返回地址
.386.model flat,stdcallinclude Irvine32.inc.stack 4096
ExitProcess PROTO,dwExitCode:DWORD.code
main PROCcall proc_1INVOKE ExitProcess,0
main ENDPproc_1 PROCpop eaxcall WriteHexpush eaxret
proc_1 ENDP
END main
.386.model flat,stdcall.stack 4096
ExitProcess PROTO,dwExitCode:DWORD.data
start DWORD 1
chars BYTE 'H','A','C','E','B','D','F','G'
links DWORD 0,4,5,6,2,3,7,0
outChars BYTE SIZEOF chars DUP(?).code
main PROCmov ecx,LENGTHOF charsmov edi,0mov esi,start
L1:mov al,chars[esi * TYPE chars]mov outChars[edi * TYPE outChars],almov eax,esimov esi,links[eax * TYPE links]inc ediloop L1INVOKE ExitProcess,0
main ENDP
END main
7: 遞歸過程,ECX設定調用次數,不使用其他條件判斷,只使用LOOP
.386.model flat,stdcall.stack 4096
ExitProcess PROTO,dwExitCode:DWORD.data
count DWORD 0.code
main PROCmov ecx,2call proc_1INVOKE ExitProcess,0
main ENDPproc_1 PROCinc countloop L1retL1:call proc_1ret
proc_1 ENDPEND main
8: AND,OR,XOR使用例子
.386.model flat,stdcall.stack 4096
ExitProcess PROTO,dwExitCode:DWORD.code
main PROCmov ax,0FFFFhand ax,0FFh ;清除AX的高8位,AX的低8位不變mov ax,0or ax,0FF00h ;高AX的8位置1,AX的低8位不變mov eax,0FFFF0000hxor eax,0FFFFFFFFh ;不使用NOT,使EAX所有位取反mov eax,10and eax,1;當EAX的32位值為偶數時,零標志為1,奇數時為0mov eax,11and eax,1INVOKE ExitProcess,0
main ENDP
END main
9: 條件跳轉應用,測試狀態位
.386.model flat,stdcall.stack 4096
ExitProcess PROTO,dwExitCode:DWORD.data
status BYTE 88.code
main PROCmov al,statustest al,00100000b ;測試位5 為1就跳轉jnz L0mov al,statustest al,00010011b ;位0、1、4為1就跳轉jnz L1mov al,statusand al,10001100b ;屏蔽位2、3、7cmp al,10001100b ;所有位都置1?je L2L0:
L1:
L2:INVOKE ExitProcess,0
main ENDP
END main
10: 條件跳轉應用,兩個數最大數
.386.model flat,stdcall.stack 4096
ExitProcess PROTO,dwExitCode:DWORD.data
status BYTE 88.code
main PROCmov eax,100mov ebx,99mov edx ,eax ;假設EAX存放的是最大數cmp eax,ebxjae L1 ;EAX大于等于EBX就跳轉,不再改變EDX的值mov edx,ebx
L1:;EDX存放最大值INVOKE ExitProcess,0
main ENDP
END main
RandomAccessFile類readInt()方法 (RandomAccessFile Class readInt() method) readInt() method is available in java.io package. readInt()方法在java.io包中可用。 readInt() method is used to read signed 32-bit integer value from this RandomAccessFile. readInt()方…
java jar包示例包類的isCompatibleWith()方法 (Package Class isCompatibleWith() method) isCompatibleWith() method is available in java.lang package. isCompatibleWith()方法在java.lang包中可用。 isCompatibleWith() method is used to check the specification versi…
tooctalstring長類toOctalString()方法 (Long class toOctalString() method) toOctalString() method is available in java.lang package. toOctalString()方法在java.lang包中可用。 toOctalString() method is used to represent an octal string of the given parameter […
ObjectOutputStream類flush()方法 (ObjectOutputStream Class flush() method) flush() method is available in java.io package. flush()方法在java.io包中可用。 flush() method is used to flush this stream and write bytes immediately of any buffered output to the u…