Difference between revisions of "Machine language"
From ThorstensHome
(4 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
This shows a mapping of x86 machine language to assembler | This shows a mapping of x86 machine language to assembler | ||
− | + | 00 01 add BYTE PTR [bx+di],al | |
− | + | 00 41 41 add BYTE PTR [bx+di+0x41],al | |
− | + | 00 ff add bh,bh | |
− | + | 0a .byte 0xa | |
− | + | 40 inc ax | |
− | + | 41 inc cx | |
− | + | 42 inc dx | |
− | + | 43 inc bx | |
− | + | 44 inc sp | |
− | + | 45 inc bp | |
− | + | 46 inc si | |
− | + | 47 inc di | |
− | + | 48 dec ax | |
− | + | 49 dec cx | |
− | + | 4a dec dx | |
− | + | 4b dec bx | |
− | + | 4c dec sp | |
− | + | 4d dec bp | |
− | + | 4e dec si | |
− | + | 4f dec di | |
− | + | 50 push ax | |
− | + | 51 push cx | |
− | + | 52 push dx | |
− | + | 53 push bx | |
− | + | 54 push rsp | |
− | + | 55 push bp | |
− | + | 56 push si | |
− | + | 57 push di | |
− | + | 58 pop ax | |
+ | 59 pop cx | ||
+ | 5a pop dx | ||
+ | 85 c0 test ax,ax | ||
+ | 90 nop | ||
+ | b8 00 00 00 00 mov eax,0x0 | ||
+ | c3 ret | ||
+ | cd 10 int 10 | ||
+ | eb fd short jump to executing the byte before eb | ||
+ | fa cli This will clear the interrupt flag in the processor meaning interrupts will not be processed after the flag is set again. This means a high risk - no more keyboard input etc.. So this is a privileged command and may only be executed by the operating system. |
Latest revision as of 11:17, 14 December 2014
This shows a mapping of x86 machine language to assembler
00 01 add BYTE PTR [bx+di],al 00 41 41 add BYTE PTR [bx+di+0x41],al 00 ff add bh,bh 0a .byte 0xa 40 inc ax 41 inc cx 42 inc dx 43 inc bx 44 inc sp 45 inc bp 46 inc si 47 inc di 48 dec ax 49 dec cx 4a dec dx 4b dec bx 4c dec sp 4d dec bp 4e dec si 4f dec di 50 push ax 51 push cx 52 push dx 53 push bx 54 push rsp 55 push bp 56 push si 57 push di 58 pop ax 59 pop cx 5a pop dx 85 c0 test ax,ax 90 nop b8 00 00 00 00 mov eax,0x0 c3 ret cd 10 int 10 eb fd short jump to executing the byte before eb fa cli This will clear the interrupt flag in the processor meaning interrupts will not be processed after the flag is set again. This means a high risk - no more keyboard input etc.. So this is a privileged command and may only be executed by the operating system.