intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Kiến trúc máy tính - Bài thực hành số 2

Chia sẻ: Nguyễn Xuân Quang | Ngày: | Loại File: PDF | Số trang:5

268
lượt xem
45
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tham khảo tài liệu 'kiến trúc máy tính - bài thực hành số 2', công nghệ thông tin, phần cứng phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

Chủ đề:
Lưu

Nội dung Text: Kiến trúc máy tính - Bài thực hành số 2

  1. Bài 2: Các thao tác x lý chương trình v i công c Debug 2.1. Nh p đo n chương trình b ng mã g i nh (l nh A) Cú pháp: A [address] Ý nghĩa: Nh p đo n mã g i nh vào b nh đ a ch address Ví d : Nh p đo n chương trình sau vào vùng nh 0B17:0100 MOV AX,500H MOV BX,16H ADD AX,BX -a 0B17:100 0B17:0100 MOV AX,500 0B17:0103 MOV BX, 16 0B17:0106 ADD AX,BX 0B17:0108 - Lưu ý: - N u đ a ch ch g m thành ph n Offset thì Segment m c đ nh là n i dung c a thanh ghi CS - H cơ s m c đ nh đư c s d ng là 16 nên không c n thêm h u t H cu i giá tr h ng (500H 500; 16H 16) - D a vào đ a ch cu i cùng có th tính đư c kích thư c c a đo n chương trình v a nh p (Trong ví d trên, đo n chương trình có kích thư c 8 byte) 2.2. Xem đo n chương trình trong b nh d ng mã g i nh (l nh U) Cú pháp: U [range] Ý nghĩa: Xem dư i d ng mã g i nh m t đo n chương trình n m trong b nh Ví d : Xem đo n chương trình đã nh p ph n trên vùng nh 0B17:0100 Xem b t đ u t đ a ch 0B17:0100, chi u dài 8 byte : -u 0B17:100 L 8 0B17:0100 B80005 MOV AX,0500 0B17:0103 BB1600 MOV BX,0016 0B17:0106 01D8 ADD AX,BX Ho c xem b t đ u t đ a ch 0B17:0100 đ n đ a ch 0106 : -u 0B17:100 106 0B17:0100 B80005 MOV AX,0500 0B17:0103 BB1600 MOV BX,0016 0B17:0106 01D8 ADD AX,BX Ho c xem t đ a ch 0B17:0100: -u 0B17:0100 0B17:0100 B80005 MOV AX,0500 0B17:0103 BB1600 MOV BX,0016 0B17:0106 01D8 ADD AX,BX 0B17:0108 6C DB 6C 0B17:0109 6F DB 6F 0B17:010A 48 DEC AX 0B17:010B 65 DB 65 0B17:010C 6C DB 6C 10
  2. 0B17:010D 6C DB 6C 0B17:010E 6F DB 6F 0B17:010F 48 DEC AX 0B17:0110 0000 ADD [BX+SI],AL 0B17:0112 0000 ADD [BX+SI],AL 0B17:0114 0000 ADD [BX+SI],AL 0B17:0116 0000 ADD [BX+SI],AL 0B17:0118 0000 ADD [BX+SI],AL 0B17:011A 0000 ADD [BX+SI],AL 0B17:011C 0000 ADD [BX+SI],AL 0B17:011E 0000 ADD [BX+SI],AL Xem dư i d ng mã nh phân: -d 0B17:0100 0B17:0100 B8 00 05 BB 16 00 01 D8-6C 6F 48 65 6C 6C 6F 48 ........loHelloH 0B17:0110 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0B17:0120 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0B17:0130 6C 6F 48 65 6C 6C 6F 48-65 6C 6C 6F 48 65 6C 6C loHelloHelloHell 0B17:0140 6F 48 65 6C 6C 6F 48 65-6C 6C 6F 48 65 6C 6C 6F oHelloHelloHello 0B17:0150 22 33 22 33 22 33 22 33-22 33 22 33 22 33 22 33 "3"3"3"3"3"3"3"3 0B17:0160 22 33 22 33 22 33 22 33-22 33 22 33 22 33 22 33 "3"3"3"3"3"3"3"3 0B17:0170 22 33 22 33 22 33 22 33-22 33 22 33 22 33 22 33 "3"3"3"3"3"3"3"3 -d 0B17:0100 L8 0B17:0100 B8 00 05 BB 16 00 01 D8 ........ 2.3. Th c thi đo n chương trình trong b nh (l nh G, P, T) Cú pháp: G [=address] [addresses] Ý nghĩa: Th c thi đo n chương trình trong b nh b t đ u t đ a ch [=address] và đ t các đi m d ng (breakpoints) trong tham s [addresses] Cú pháp: T [=address] [number] Ý nghĩa: Th c thi [number] l nh b t đ u t đ a ch [=address] và d ng l i. Cú pháp: P [=address] [number] Ý nghĩa: Tương t l nh T, tuy nhiên các l nh g i chương trình con, l nh l p, g i ng t đư c xem như 1 l nh và th c thi qua m t bư c. Ví d : Nh p đo n chương trình sau vào vùng nh b t đ u đ a ch 0B17:0100 và th c thi. Cho bi t n i dung các thanh ghi AX,BX,CX sau khi th c thi xong chương trình MOV AX,516h MOV BX,1 XCHG BH,BL MOV CX, AX XCHG AL,BL Nh p b t đ u t đ a ch 0B17:0100: -a 0b17:100 0B17:0100 MOV AX,516 0B17:0103 MOV BX,1 0B17:0106 XCHG BH,BL 0B17:0108 MOV CX,AX 0B17:010A XCHG AL,BL 0B17:010C Th c thi t đ a ch 0B17:0100 đ n 0B17:010C -g=0b17:100 0b17:010C 11
  3. AX=0500 BX=0116 CX=0516 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=17E1 ES=17E1 SS=17E1 CS=0B17 IP=010C NV UP EI PL NZ NA PO NC 0B17:010C 0000 ADD [BX+SI],AL DS:0116=00 Th c thi t ng l nh t đ a ch 0B17:0100 (5 l nh) -t 0B17:0100 AX=0516 BX=0116 CX=0516 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=17E1 ES=17E1 SS=17E1 CS=0B17 IP=0103 NV UP EI PL NZ NA PO NC 0B17:0103 BB0100 MOV BX,0001 -t AX=0516 BX=0001 CX=0516 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=17E1 ES=17E1 SS=17E1 CS=0B17 IP=0106 NV UP EI PL NZ NA PO NC 0B17:0106 86FB XCHG BH,BL -t AX=0516 BX=0100 CX=0516 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=17E1 ES=17E1 SS=17E1 CS=0B17 IP=0108 NV UP EI PL NZ NA PO NC 0B17:0108 89C1 MOV CX,AX -t AX=0516 BX=0100 CX=0516 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=17E1 ES=17E1 SS=17E1 CS=0B17 IP=010A NV UP EI PL NZ NA PO NC 0B17:010A 86C3 XCHG AL,BL -t AX=0500 BX=0116 CX=0516 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=17E1 ES=17E1 SS=17E1 CS=0B17 IP=010C NV UP EI PL NZ NA PO NC 0B17:010C 0000 ADD [BX+SI],AL - Bài t p: Nh p chương trình sau vào vùng nh CS:0100 và th c thi jmp 126 db 0d,0a,"This is my first DEBUG program!" db 0d,0a,"$" mov ah,9 mov dx,102 int 21 int 20 Lưu ghi chương trình lên đĩa c ng v i tên first.com. Ch y th trên n n windows. Kh i đ ng l i Debug và n p chương trình first.com vào đ ki m tra. Hư ng d n: Nh p chương trình đ a ch 100h (Segment m c đ nh ch a trong CS) -A 100 CS:0100 jmp 126 CS:0102 db 0d,0a,"This is my first DEBUG program!" CS:0123 db 0d,0a,"$" CS:0126 mov ah,9 CS:0128 mov dx,102 CS:012B int 21 CS:012D int 20 CS:012F Xem l i chương trình t đ a ch 0100h đ n 012Fh, lưu ý trong vùng nh này v a ch a chương trình v a ch a d li u -u 100 012F CS:0100 EB24 JMP 0126 CS:0102 0D0A54 OR AX,540A CS:0105 68 DB 68 12
  4. CS:0106 69 DB 69 CS:0107 7320 JNB 0129 CS:0109 69 DB 69 CS:010A 7320 JNB 012C CS:010C 6D DB 6D CS:010D 7920 JNS 012F CS:010F 66 DB 66 CS:0110 69 DB 69 CS:0111 7273 JB 0186 CS:0113 7420 JZ 0135 CS:0115 44 INC SP CS:0116 45 INC BP CS:0117 42 INC DX CS:0118 55 PUSH BP CS:0119 47 INC DI CS:011A 207072 AND [BX+SI+72],DH CS:011D 6F DB 6F CS:011E 67 DB 67 CS:011F 7261 JB 0182 CS:0121 6D DB 6D CS:0122 210D AND [DI],CX CS:0124 0A24 OR AH,[SI] CS:0126 B409 MOV AH,09 CS:0128 BA0201 MOV DX,0102 CS:012B CD21 INT 21 CS:012D CD21 INT 20 CS:012F 0000 ADD [BX+SI],AL Xem d li u t đ a ch 102h đ n 125h, đ m c đ nh Data Segment c n thay đ i thanh ghi DS cùng giá tr v i n i dung thanh ghi CS -r ds DS 17E1 : -d 102 125 DS:0100 0D 0A 54 68 69 73-20 69 73 20 6D 79 20 66 ..This is my f DS:0110 69 72 73 74 20 44 45 42-55 47 20 70 72 6F 67 72 irst DEBUG progr DS:0120 61 6D 21 0D 0A 24 am!..$ Th c thi chương trình: -g=100 This is my first DEBUG program! Program terminated normally - Ghi vào file first.com -N C:\first.com -r bx BX 0000 : -r cx CX 0000 :2f -w 100 Writing 0002F bytes - Thoát và ch y l i chương trình debug, n p l i first.com lên b nh -N C:\first.com -L 100 Xem n i dung v a n p: 13
  5. -d 100 17F2:0100 EB 24 0D 0A 54 68 69 73-20 69 73 20 6D 79 20 66 .$..This is my f 17F2:0110 69 72 73 74 20 44 45 42-55 47 20 70 72 6F 67 72 irst DEBUG progr 17F2:0120 61 6D 21 0D 0A 24 B4 09-BA 02 01 CD 21 CD 20 00 am!..$......!. . 17F2:0130 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 17F2:0140 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 17F2:0150 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 17F2:0160 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 17F2:0170 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ Th c thi th : -g=100 This is my first DEBUG program! Program terminated normally - 14
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2