Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as Plain Text by ddd ( 13 years ago )
EMU8086 GENERATED LISTING. MACHINE CODE <- SOURCE.
lab1_spausdinimas.exe -- emu8086 assembler version: 4.08
[ 20/12/2012 -- 23:55:12 ]
===================================================================================================
[LINE] LOC: MACHINE CODE SOURCE
===================================================================================================
[ 1] : ;Laboratorinis darbas Nr. 1
[ 2] : ;Uzduotis: Parasyti paprasta programa kuri atspausdina keleta teksto eiluciu.
[ 3] :
[ 4] : stekas segment stack
[ 5] :
[ 6] 0000: 00 00 00 00 00 00 00 00 00 00 00 00 db 256 dup(?)
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00
[ 7] :
[ 8] : stekas ends
[ 9] :
[ 10] : duomenys segment
[ 11] : ;kintamuju-tekstu, kuriuos isves programa aprasymas
[ 12] 0100: 4C 61 62 6F 72 61 74 6F 72 69 6E 69 tekstas1 db 'Laboratorinis darbas Nr.1 Teksto spausdinimas.',13,10,'$'
73 20 64 61 72 62 61 73 20 4E 72 2E
31 20 54 65 6B 73 74 6F 20 73 70 61
75 73 64 69 6E 69 6D 61 73 2E 0D 0A
24
[ 13] 0131: 41 74 6C 69 6B 6F 20 4A 6F 6E 61 73 tekstas2 db 'Atliko Jonas Vaitkevicius, IINT-12/1, 2012-11.',13,10,'$'
20 56 61 69 74 6B 65 76 69 63 69 75
73 2C 20 49 49 4E 54 2D 31 32 2F 31
2C 20 32 30 31 32 2D 31 31 2E 0D 0A
24
[ 14] 0162: 50 72 6F 67 72 61 6D 61 20 61 74 73 tekstas3 db 'Programa atspausdina keleta eiluciu teksto i ekrana.',13,10,'$'
70 61 75 73 64 69 6E 61 20 6B 65 6C
65 74 61 20 65 69 6C 75 63 69 75 20
74 65 6B 73 74 6F 20 69 20 65 6B 72
61 6E 61 2E 0D 0A 24
[ 15] : duomenys ends
[ 16] :
[ 17] : programa segment
[ 18] 01A0: start:
[ 19] : assume ss:stekas, ds:duomenys, cs:programa
[ 20] 01A0: B8 10 00 MOV AX,duomenys
[ 21] 01A3: 8E D8 MOV DS,AX ;uzkraunam duomenu segmento adresa
[ 22] : ;isvalome ekrana
[ 23] 01A5: B8 02 00 MOV ax,0002h
[ 24] 01A8: CD 10 INT 10h
[ 25] : ;spausdinimas
[ 26] 01AA: B4 09 MOV AH,09h
[ 27] 01AC: BA 00 00 LEA DX,tekstas1 ;ivedam pirmo pranesimo adresa
[ 28] 01AF: CD 21 INT 21h ;spausdinam pirma teksta
[ 29] 01B1: B4 09 MOV AH,09h
[ 30] 01B3: BA 31 00 LEA DX,tekstas2
[ 31] 01B6: CD 21 INT 21h ;spausdinam antra teksta
[ 32] 01B8: B4 09 MOV AH,09h
[ 33] 01BA: BA 62 00 LEA DX,tekstas3
[ 34] 01BD: CD 21 INT 21h ;spausdinam trecia teksta
[ 35] : ;Laukiama kol naudotojas paspaus bet koki klavisa
[ 36] 01BF: B4 07 MOV ah, 07h
[ 37] 01C1: CD 21 INT 21h
[ 38] : ;isejimas i DOS
[ 39] 01C3: B4 4C MOV AH,4Ch
[ 40] 01C5: CD 21 INT 21h
[ 41] : programa ends
[ 42] : END start
[ 43] :
===================================================================================================
EXE HEADER - bytes from 0000 to 01FF inclusive.
0000: 4D - exe signature (M)
0001: 5A - exe signature (Z)
0002: C7 - bytes on last page (l.byte)
0003: 01 - bytes on last page (h.byte)
0004: 02 - 512 byte pages in file (l.byte)
0005: 00 - 512 byte pages in file (h.byte)
0006: 01 - relocations (l.byte)
0007: 00 - relocations (h.byte)
0008: 20 - paragraphs in header (l.byte)
0009: 00 - paragraphs in header (h.byte)
000A: 00 - minimum memory (l.byte)
000B: 00 - minimum memory (h.byte)
000C: FF - maximum memory (l.byte)
000D: FF - maximum memory (h.byte)
000E: 00 - SS - stack segment (l.byte)
000F: 00 - SS - stack segment (h.byte)
0010: 00 - SP - stack pointer (l.byte)
0011: 01 - SP - stack pointer (h.byte)
0012: 65 - check sum (l.byte)
0013: 31 - check sum (h.byte)
0014: 00 - IP - instruction pointer (l.byte)
0015: 00 - IP - instruction pointer (h.byte)
0016: 1A - CS - code segment (l.byte)
0017: 00 - CS - code segment (h.byte)
0018: 1E - relocation table adress (l.byte)
0019: 00 - relocation table adress (h.byte)
001A: 00 - overlay number (l.byte)
001B: 00 - overlay number (h.byte)
001C: 01 - signature (l.byte)
001D: 00 - signature (h.byte)
001E: 01 - relocation table - offset inside segment (l.byte)
001F: 00 - relocation table - offset inside segment (h.byte)
0020: 1A - relocation table - segment anchor (l.byte)
0021: 00 - relocation table - segment anchor (h.byte)
0022 to 01FF - reserved relocation area (00)
===================================================================================================
Revise this Paste