Register r Debug C debug r AX0000 BX0000

  • Slides: 18
Download presentation

แสดงคา Register ดวย r ในโปรแกรม Debug C: >debug -r AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE

แสดงคา Register ดวย r ในโปรแกรม Debug C: >debug -r AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DS=119 B ES=119 B SS=119 B CS=119 B IP=0100 NV UP EI PL NZ NA PO NC 119 B: 0100 00 C 4 ADD AH, AL -r ax หมายถง เปลยนคาของ AX http: //www. thaiall. com/assembly Register Page: 2

แสดงการกำหนด register และเรยกใช interrupt C: >debug -r ax 0200: -r dx 0041: -a 100

แสดงการกำหนด register และเรยกใช interrupt C: >debug -r ax 0200: -r dx 0041: -a 100 int 21 int 20 -g A Program terminated normally http: //www. thaiall. com/assembly Page: 3

สราง exitpro. com (1/4 ( DOS> debug -n exitpro. com -a mov ah, 4

สราง exitpro. com (1/4 ( DOS> debug -n exitpro. com -a mov ah, 4 c int 21 h -rcx 0004: -w -q http: //www. thaiall. com/assembly Page: 4

สราง exitpro. com (2/4 ( DOS> debug -n exitpro. com -e 0100 B 4

สราง exitpro. com (2/4 ( DOS> debug -n exitpro. com -e 0100 B 4 4 C CD 21 -rcx 0004: -w -q http: //www. thaiall. com/assembly Page: 5

สราง exitpro. com (3/4 ( DOS> copy con exitpro. scr n exitpro. com e

สราง exitpro. com (3/4 ( DOS> copy con exitpro. scr n exitpro. com e 0100 B 4 4 C CD 21 rcx 0004 w q ^Z DOS> debug < exitpro. scr DOS> exitpro. com http: //www. thaiall. com/assembly Page: 6

สราง exitpro. com (4/4( DOS> debug exitpro. com -u 106 F: 0100 mov ah,

สราง exitpro. com (4/4( DOS> debug exitpro. com -u 106 F: 0100 mov ah, 4 c 106 F: 0102 int 21 -a 100 106 F: 0100 mov ax, 4 c 00 106 F: 0102 int 21 -w -q DOS< http: //www. thaiall. com/assembly Page: 7

แสดงตวอกษรจากบรการ AH 02 DOS> copy con x. scr n x. com a mov ah,

แสดงตวอกษรจากบรการ AH 02 DOS> copy con x. scr n x. com a mov ah, 02 mov dl, 41 int 21 h mov ah, 02 mov dl, 62 int 21 h int 20 rcx 0014 w q DOS> debug < x. scr DOS> x. com http: //www. thaiall. com/assembly Page: 8

เขยนภาษา Assembly ใน C: >debug Debug -a 106 F: 0100 mov ah, 02 106

เขยนภาษา Assembly ใน C: >debug Debug -a 106 F: 0100 mov ah, 02 106 F: 0102 mov dl, 41 106 F: 0104 int 21 106 F: 0106 int 20 106 F: 0108 -g A Program terminated normally -n x. com -rcx 8: -w -q C: >x A http: //www. thaiall. com/assembly Page: 9

สงขอมลออกทาง Printer c: >debug Port (1/3) -a mov al, 48 mov dx, 378 out

สงขอมลออกทาง Printer c: >debug Port (1/3) -a mov al, 48 mov dx, 378 out dx, al mov ax, 4 C 00 int 21 h -g -q c<: ; ; 0100 -1000 8 -bit in al parallel port is 378 h write it return to DOS ����� http: //www. thaiall. com/printer/indexo. html http: //www. thaiall. com/assembly Page: 10

สงขอมลออกทาง Printer c: >debug Port (2/3) -n on. com -a mov al, ff ;

สงขอมลออกทาง Printer c: >debug Port (2/3) -n on. com -a mov al, ff ; 1111 -1111 mov dx, 378 out dx, al mov ax, 4 C 00 int 21 h -rcx b -w -q c: >on http: //www. thaiall. com/assembly Page: 11

สงขอมลออกทาง Printer : loop Port (3/3) on. com pause off. com pause goto loop

สงขอมลออกทาง Printer : loop Port (3/3) on. com pause off. com pause goto loop http: //www. thaiall. com/assembly Page: 12

Bit Operation (3/6) C: >debug -a 100 0 B 24: 0100 mov dx, dffd

Bit Operation (3/6) C: >debug -a 100 0 B 24: 0100 mov dx, dffd 0 B 24: 0103 shl dx, 1 0 B 24: 0105 -r AX=0000 BX=0000 DS=0 B 24 ES=0 B 24: 0103 D 1 E 2 -t =cs: 100 2 CX=0000 DX=0000 SP=FFEE SS=0 B 24 CS=0 B 24 IP=0103 SHL DX, 1 BP=0000 SI=0000 DI=01 B 8 OV UP EI PL NZ NA PE CY AX=0000 BX=0000 DS=0 B 24 ES=0 B 24: 0103 D 1 E 2 CX=0000 DX=DFFD SP=FFEE SS=0 B 24 CS=0 B 24 IP=0103 SHL DX, 1 BP=0000 SI=0000 DI=01 B 8 OV UP EI PL NZ NA PE CY AX=0000 BX=0000 DS=0 B 24 ES=0 B 24: 0105 D 1 E 2 - CX=0000 DX=BFFA SP=FFEE SS=0 B 24 CS=0 B 24 IP=0105 SHL DX, 1 BP=0000 SI=0000 DI=01 B 8 NV UP EI NG NZ NA PE CY http: //www. thaiall. com/assembly Page: 15

Bit Operation (4/6) 0001 0100 or 0100 0010 = 0100 0011 C: >debug -a

Bit Operation (4/6) 0001 0100 or 0100 0010 = 0100 0011 C: >debug -a 100 0 AE 8: 0100 mov ah, 02 0 AE 8: 0102 mov dl, 41 0 AE 8: 0104 int 21 0 AE 8: 0106 int 20 -g A Program terminated normally -a 106 0 AE 8: 0106 or dl, 42 0 AE 8: 0109 int 21 0 AE 8: 010 B int 20 0 AE 8: 010 D -g AC Program terminated normally http: //www. thaiall. com/assembly Page: 16

Bit Operation (5/6) C: >debug -n x. com -a 0 AE 8: 0100 mov

Bit Operation (5/6) C: >debug -n x. com -a 0 AE 8: 0100 mov ah, 02 0 AE 8: 0102 mov dl, 41 0 AE 8: 0104 int 21 0 AE 8: 0106 add dl, 2 0 AE 8: 0109 int 21 0 AE 8: 010 B int 20 0 AE 8: 010 D -rcx CX 0000 : d -w Writing 0000 D bytes -q C: >x AC C<: http: //www. thaiall. com/assembly Page: 17

Bit Operation (6/6) คำสง rcr ยาย bit ไปทางขวา แตมตวทด (Carry Flag) มารบ : 106

Bit Operation (6/6) คำสง rcr ยาย bit ไปทางขวา แตมตวทด (Carry Flag) มารบ : 106 before 01110001=71=q, after 00111000=38=8, cf=1 10 A : before 00111000=38=8, after 10011100=9 C=? , cf=0 10 C : before 10011100=9 C=? , after 01001110=4 E=N, cf=0 -u 100 0 AE 8: 0100 B 271 MOV DL, 71 0 AE 8: 0102 B 402 MOV AH, 02 0 AE 8: 0104 CD 21 INT 21 0 AE 8: 0106 D 0 DA RCR DL, 1 0 AE 8: 0108 CD 21 INT 21 0 AE 8: 010 A D 0 DA RCR DL, 1 0 AE 8: 010 C D 0 DA RCR DL, 1 0 AE 8: 010 E CD 21 INT 21 0 AE 8: 0110 CD 20 INT 20 -g q 8 N Program terminated normally http: //www. thaiall. com/assembly Page: 18