Cấu trúc máy tính và ASM - Chương 3

30 518 1
Cấu trúc máy tính và ASM - Chương 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Sự cần thiết của lệnh nhảy trong lập trình ASM. Lệnh JMP (Jump) : nhảy không điều kiện. Lệnh LOOP : cho phép lặp 1 công việc với 1 số lần nào đó. Các lệnh so sánh và luận lý

10/17/1210/17/12Chuong 3 DebugChuong 3 Debug11CHƯƠNG TRÌNH GỢ RỐI DEBUGCHƯƠNG TRÌNH GỢ RỐI DEBUG Dòch được 1 chương trình ngắnDòch được 1 chương trình ngắnMục tiêu Xem các thanh ghi cờ của CPUXem các thanh ghi cờ của CPU Xem sự thay đổi nội dung của các biếnXem sự thay đổi nội dung của các biến Dò tìm trò ở dạng nhò phân hoặc ASCII trong bộ nhớDò tìm trò ở dạng nhò phân hoặc ASCII trong bộ nhớ HỗHỗ trợ luyện tập viết chương trình bằng Assembly 10/17/12Chuong 3 Debug2Dạng lệnh của DebugDạng lệnh của Debug <mã lệnh > <thông số><mã lệnh > <thông số>Trong đó mã lệnh là 1 trong các chữ A,B,C,D,E, . còn thông số thì thay đổi tùy theo lệnh.Các thông số có thể là :Đòa chỉ : là 1 bộ đòa chỉ đầy đủ segment : offset hay chỉ cần offset là đủ. Segment có thể dùng tên thanh ghi.Ex : F000:0100 DS: 200 0AF5 10/17/12Chuong 3 Debug3DạngDạng lệnh của Debug lệnh của DebugTập tin : là 1 tham khảo tên tập tin đầy đủ, ít nhất phải có tên tập tin.Danh sách :Là 1 hay nhiều trò byte hoặc chuổi cách nhau bằng dấu phẩy.Khoảng : là 1 tham khảo đến vùng bộ nhớTrò : là 1 số hệ 16 có tối đa có 4 chữ số 10/17/12Chuong 3 Debug4Tập lệnh của DebugTập lệnh của DebugA <Assemble> :A <Assemble> :cho phép viết từ bàn phím các lệnh mã máy cho phép viết từ bàn phím các lệnh mã máy dưới dạng gợi nhớ.dưới dạng gợi nhớ.A [ <đòa chỉ>]A [ <đòa chỉ>]Ex : - A 100 dòch ở đòa chỉ CS:100hEx : - A 100 dòch ở đòa chỉ CS:100h - A - A dòch ở đòa chỉ hiện tại dòch ở đòa chỉ hiện tại (Debug lấy đòa chỉ đoạn CS)(Debug lấy đòa chỉ đoạn CS) - A DS:2000h - A DS:2000h dòch ở đòa chỉ dòch ở đòa chỉ DS:2000hDS:2000h 10/17/12Chuong 3 Debug5TThí dụ minh họa lệnh Ahí dụ minh họa lệnh APhải nhập lệnh vào theo từng dòng một Phải nhập lệnh vào theo từng dòng một kết thúc bằng Enter.kết thúc bằng Enter.Kết thúc nhập nhấn Enter ở dòng trống.Kết thúc nhập nhấn Enter ở dòng trống.Ex : - A 100Ex : - A 1005514:0100 MOV AH, 25514:0100 MOV AH, 25514:0102 MOV DL, 415514:0102 MOV DL, 415514:0104 INT 21H5514:0104 INT 21HSEGMENT OFFSETUser gỏ vào 10/17/12Chuong 3 Debug6C (Compare)C (Compare)So sánh 2 vùng bộ nhớ liệt kê các ô nhớ có So sánh 2 vùng bộ nhớ liệt kê các ô nhớ có nội dung khác nhau.nội dung khác nhau.Cú pháp : C <khoảng> , < đòa chỉ>Ex : - C 100, 200, 3000 : 1000So sánh ô nhớ DS:100h với ô nhớ 3000:1000h, ô nhớ DS:101h với ô nhớ 3000:1001h… Cho đến ô nhớ DS :200h với ô nhớ 3000:1100h. So sánh 101 bytes 10/17/12Chuong 3 Debug7D (Dump)D (Dump)Hiện nội dung bộ nhớ theo dạng hệ 16 Hiện nội dung bộ nhớ theo dạng hệ 16 ASCIIASCII Cách gọi : D <khoảng>Ex : - D F000 : 0 - D ES : 100 - D 100 10/17/12Chuong 3 Debug8Lệnh F (Lệnh F (Fill)Fill)Cú pháp : F <khoảng> <danh sách>Cú pháp : F <khoảng> <danh sách>Công dụng : lấp đầy trò vào vùng nhớ ngay Công dụng : lấp đầy trò vào vùng nhớ ngay tại đòa chỉ mong muốn.tại đòa chỉ mong muốn.Trò nhập vào từng byte một theo hệ 16Dấu trừ (-) dùng để lùi lại 1 đòa chỉ.SPACE BAR dùng để tới 1 đòa chỉ.ENTER để kết thúc. 10/17/12Chuong 3 Debug9Minh họa lệnhMinh họa lệnh F F Lắp đầy vùng nhớ tại đòa chỉ offset 100h Lắp đầy vùng nhớ tại đòa chỉ offset 100h chuổi “ Toi dua em sang song”.chuổi “ Toi dua em sang song”.F 100 “TOI DUA EM SANG SONG”OFFSET 100H 10/17/12Chuong 3 Debug10KEÁT QUAÛKEÁT QUAÛ-F 100 "TOI DUA EM SANG SONG"-D 1000ADD:0100 54 4F 49 20 44 55 41 20-45 4D 20 53 41 4E 47 20 TOI DUA EM SANG0ADD:0110 53 4F 4E 47 54 4F 49 20-44 55 41 20 45 4D 20 53 SONGTOI DUA EM S0ADD:0120 41 4E 47 20 53 4F 4E 47-54 4F 49 20 44 55 41 20 ANG SONGTOI DUA0ADD:0130 45 4D 20 53 41 4E 47 20-53 4F 4E 47 54 4F 49 20 EM SANG SONGTOI0ADD:0140 44 55 41 20 45 4D 20 53-41 4E 47 20 53 4F 4E 47 DUA EM SANG SONG0ADD:0150 54 4F 49 20 44 55 41 20-45 4D 20 53 41 4E 47 20 TOI DUA EM SANG0ADD:0160 53 4F 4E 47 54 4F 49 20-44 55 41 20 45 4D 20 53 SONGTOI DUA EM S0ADD:0170 41 4E 47 20 53 4F 4E 47-54 4F 49 20 44 55 41 20 ANG SONGTOI DUA [...]... với ô nhớ 30 00:1100h.  So sánh 101 bytes 10/17/12 Chuong 3 Debug 10 KẾT QUẢ KẾT QUẢ -F 100 "TOI DUA EM SANG SONG" -D 100 0ADD:0100 54 4F 49 20 44 55 41 2 0-4 5 4D 20 53 41 4E 47 20 TOI DUA EM SANG 0ADD:0110 53 4F 4E 47 54 4F 49 2 0-4 4 55 41 20 45 4D 20 53 SONGTOI DUA EM S 0ADD:0120 41 4E 47 20 53 4F 4E 4 7-5 4 4F 49 20 44 55 41 20 ANG SONGTOI DUA 0ADD:0 130 45 4D 20 53 41 4E 47 2 0-5 3 4F 4E 47... nhớ theo dạng hệ 16 Hiện nội dung bộ nhớ theo dạng hệ 16 ASCII ASCII . . Cách gọi : D <khoảng> Ex : - D F000 : 0 - D ES : 100 - D 100 10/17/12 10/17/12 Chuong 3 Debug Chuong 3 Debug 1 1 CHƯƠNG TRÌNH GỢ RỐI DEBUG CHƯƠNG TRÌNH GỢ RỐI DEBUG  Dịch được 1 chương trình ngắn Dịch được 1 chương trình ngắn Mục tiêu  Xem các thanh ghi cờ của CPU Xem các thanh ghi cờ của CPU  ... [1800], 1 2000:01 13 2000:01 13 Xem laïi đoạn chương trình vừa đánh trên bằng lệnh U. Chú ý quan Xem lại đoạn chương trình vừa đánh trên bằng lệnh U. Chú ý quan sát phần mã máy. Tìm xem các toán hạng tức thời các địa sát phần mã máy. Tìm xem các toán hạng tức thời các địa chỉ xuất hiện ở đâu trong phần mã máy của lệnh. chỉ xuất hiện ở đâu trong phần mã máy của lệnh. Phần mã máy của 2 câu lệnh... đến 1 địa chỉ khác. địa chỉ khác. Cú pháp : - M <khoảng> Cú pháp : - M <khoaûng> Ex : - M 100 105 200 Ex : - M 100 105 200 Chép 5 bytes từ DS:100 đến DS:200 Chép 5 bytes từ DS:100 đến DS:200 Ex2 : - M CS:100 L 50 ES :30 0 Ex2 : - M CS:100 L 50 ES :30 0 Chép 50 bytes từ CS:100 đến ES :30 0 Chép 50 bytes từ CS:100 đến ES :30 0 10/17/12 Chuong 3 Debug 14 Minh họa lệnh E Minh họa lệnh E Mục... 54 4F 49 20 EM SANG SONGTOI 0ADD:0140 44 55 41 20 45 4D 20 5 3- 4 1 4E 47 20 53 4F 4E 47 DUA EM SANG SONG 0ADD:0150 54 4F 49 20 44 55 41 2 0-4 5 4D 20 53 41 4E 47 20 TOI DUA EM SANG 0ADD:0160 53 4F 4E 47 54 4F 49 2 0-4 4 55 41 20 45 4D 20 53 SONGTOI DUA EM S 0ADD:0170 41 4E 47 20 53 4F 4E 4 7-5 4 4F 49 20 44 55 41 20 ANG SONGTOI DUA 10/17/12 Chuong 3 Debug 8 Lệnh F ( Lệnh F ( Fill) Fill) Cú pháp : F <khoảng>... A s s e m b l y 10/17/12 Chuong 3 Debug 12 Thí dụ minh họa lệnh Thí dụ minh họa lệnh D D đánh vào lệnh D để xem nội dung vùng nhớ đánh vào lệnh D để xem nội dung vùng nhớ của 30 h bytes bộ nhớ từ địa chỉ 0000:0040 của 30 h bytes bộ nhớ từ địa chỉ 0000:0040 đến 0000:006F đến 0000:006F - D 0000:0040 006F Địa chỉ bắt đầu - D 0000:0040 L 30 Số bytes 10/17/12 Chuong 3 Debug 5 T T hí dụ minh họa lệnh... dua em sang song”. F 100 “TOI DUA EM SANG SONG” OFFSET 100H 10/17/12 Chuong 3 Debug 23 Leänh H (Hex Arithmethic) Leänh H (Hex Arithmethic) thực hiện phép cộng trừ hệ 16 thực hiện phép cộng trừ hệ 16 Cú pháp : - H <trị 1> <trị 2> Kết quả : hiện ra tổng hiệu của trị 1 trị 2 10/17/12 Chuong 3 Debug 3 Dạng Dạng lệnh của Debug lệnh của Debug Tập tin : là 1 tham khảo tên tập... B800:0000; bảng vector ngắt quãng 0000:0000 chỉ B800:0000; bảng vector ngắt quãng 0000:0000 Gỏ vào máy bằng lệnh A, đoạn chương trình sau ở địa Gỏ vào máy bằng lệnh A, đoạn chương trình sau ở địa chỉ 2000:0100 chỉ 2000:0100 10/17/12 Chuong 3 Debug 29 Summary Summary 2000:0100 2000:0100 MOV AL ,32 MOV AL ,32 2000:0102 2000:0102 MOV AH, 4F MOV AH, 4F 2000:0104 2000:0104 MOV CX, [200] MOV CX, [200] 2000:0108 2000:0108 MOV... sách> Công dụng : lấp đầy trị vào vùng nhớ ngay Công dụng : lấp đầy trị vào vùng nhớ ngay tại địa chỉ mong muốn. tại địa chỉ mong muốn. Trị nhập vào từng byte một theo hệ 16 Dấu trừ (-) dùng để lùi lại 1 địa chỉ. SPACE BAR dùng để tới 1 địa chỉ. ENTER để kết thúc. 10/17/12 Chuong 3 Debug 21 Lệnh T (Trace )và P Lệnh T (Trace )và P cú pháp : - T [= <điạ chỉ>][số lần] cú pháp : - T [= <điạ chỉ>][số... thanh ghi cờ CF ZF ta nhập CY vaø ZR. CY vaø ZR. 10/17/12 Chuong 3 Debug 6 C (Compare) C (Compare) So sánh 2 vùng bộ nhớ liệt kê các ô nhớ có So sánh 2 vùng bộ nhớ liệt kê các ô nhớ có nội dung khác nhau. nội dung khác nhau. Cú pháp : C <khoảng> , < địa chỉ> Ex : - C 100, 200, 30 00 : 1000 So sánh ô nhớ DS:100h với ô nhớ 30 00:1000h, ô nhớ DS:101h với ô nhớ 30 00:1001h… Cho đến . 10/17/1210/17/12Chuong 3 DebugChuong 3 Debug11CHƯƠNG TRÌNH GỢ RỐI DEBUGCHƯƠNG TRÌNH GỢ RỐI DEBUG Dòch được 1 chương trình ngắnDòch được 1 chương trình ngắnMục. 53 4F 4E 47 54 4F 49 2 0-4 4 55 41 20 45 4D 20 53 SONGTOI DUA EM S0ADD:0120 41 4E 47 20 53 4F 4E 4 7-5 4 4F 49 20 44 55 41 20 ANG SONGTOI DUA0ADD:0 130

Ngày đăng: 15/10/2012, 14:34

Hình ảnh liên quan

Mục đích : in nội dung bộ nhớ trong MT ra màn hình dưới dạng số hex. - Cấu trúc máy tính và ASM - Chương 3

c.

đích : in nội dung bộ nhớ trong MT ra màn hình dưới dạng số hex Xem tại trang 11 của tài liệu.
chương trình trong bộ nhớ ra màn hình dưới - Cấu trúc máy tính và ASM - Chương 3

ch.

ương trình trong bộ nhớ ra màn hình dưới Xem tại trang 15 của tài liệu.
và hiện ra màn hình. - Cấu trúc máy tính và ASM - Chương 3

v.

à hiện ra màn hình Xem tại trang 26 của tài liệu.
Tương tự xem nội dung vùng nhớ RAM màn hình ở địa - Cấu trúc máy tính và ASM - Chương 3

ng.

tự xem nội dung vùng nhớ RAM màn hình ở địa Xem tại trang 28 của tài liệu.

Từ khóa liên quan

Trích đoạn

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan