Tổng hợp tài liệu, ebook Phần Cứng tham khảo.
Kiểm tra trạng thái các phím Ctrl, Alt, Shift : Chúng ta có thể đọc trực tiếp từ địa chỉ 0:0417 hoặc lấy trong AL thông qua hàm AH = 2 ngắt 16H Cách đọc trực tiếp XOR AX, AX MOV ES, AX MOV AL, ES:[417H] TEST AL, 01H ; kiểm tra phím Shift JNZ SHIFT_DANGNHAN TEST AL, 04H ; kiểm tra phím Ctrl JNZ CTRL_DANGNHAN TEST AL, 08H ; Kiểm t...
61 trang | Chia sẻ: thucuc2301 | Ngày: 23/11/2020 | Lượt xem: 642 | Lượt tải: 0
NEAR | FAR báo cho lệnh RET lấy địa chỉ quay về chương trình gọi nó trong STACK. NEAR : lấy địa chỉ OFFSET (16BIT) trong STACK và gán vào thanh ghi IP. FAR : lấy địa chỉ OFFSET và SEGMENT trong STACK nạp vào thanh ghi CS:IP. CẦN ĐƯỢC QUAN TÂM TRONG QUÁ TRÌNH LẬP TRÌNH ASM. RẤT DỄ XẢY RA CÁC TRƯỜNG HỢP LÀM MẤT GIÁ TRỊ CỦA MÀ CT CHÍNH ĐÃ ĐẶT VÀ...
32 trang | Chia sẻ: thucuc2301 | Ngày: 23/11/2020 | Lượt xem: 719 | Lượt tải: 0
IIRP
27 trang | Chia sẻ: thucuc2301 | Ngày: 23/11/2020 | Lượt xem: 652 | Lượt tải: 0
Có thể mô phỏng câu trúc logic như ngôn ngữ cấp cao trong Assembly bằng lệnh JMP và LOOP. các lệnh nhảy : có điều kiện và vô điều kiện. Khi gặp lệnh nhảy, CPU sẽ quyết định nhảy hay không bằng cách dựa vào giá trị thanh ghi cờ. các lệnh luận lý dùng để làm điều kiện nhảy là AND, ổR, XổR, CMP . Bất cứ khi nào có thể, hãy tổ chức chưưng trình thà...
52 trang | Chia sẻ: thucuc2301 | Ngày: 23/11/2020 | Lượt xem: 667 | Lượt tải: 0
Cho biết giá trị của các thanh ghi ở bên phải, khi mooci lệnh của đoạn chương trình sau được thực thi. Giả sử FIRST ở offset 0H MOV AL, BYTE PTR FIRST+1 ; AL = MOV BX, WORD PTR SECOND+2 ; BX = MOV DX, OFFSET FIRST + 2 ; DX = MOV AX, 4C00H INT 21H . FIRST DW 1234h SECOND DW 16385 THIRD DB 10,20,30,40
38 trang | Chia sẻ: thucuc2301 | Ngày: 23/11/2020 | Lượt xem: 661 | Lượt tải: 0
chương trình Assembly gồm nhiều dòng lệnh. Mỗi lệnh phải viết trên 1 dòng Lệnh có thể gồm [tên] [toán tử] [toán hạng] Các ký tự phải đặt trong dấu ‘ ‘ hay “ “ DB dùng để định nghĩa biến kiểu BYTE pDW dùng để định nghĩa biến kiểu WORD. Có 2 xuất nhập dữ liệu: liên lạc trực tiếp qua Tong hay dùng các phục vụ ngắt của DOS và BIOS.
38 trang | Chia sẻ: thucuc2301 | Ngày: 23/11/2020 | Lượt xem: 689 | Lượt tải: 0
Lệnh EOI sẽ xóa bit 5 trong thanh ghi ISR để IntController có thể tiếp nhận 1 yêu cầu khác. Chương trình phục vụ ngắt phát lệnh IRET kết thúc, CPU phục hồi giá trị cs và IP từ Stack để có thể tiếp tục thực hiện qná trình trước đó. Interrupt controller đưa đường tín hiệu INT lên mức 1 để báo cho CPU biết có ngắt quãng. Sau khi CPU chấp thuận ngắt...
49 trang | Chia sẻ: thucuc2301 | Ngày: 23/11/2020 | Lượt xem: 675 | Lượt tải: 0
Cờ nào được thiết lập kill 1 phép tính sô học không dân qná rộng không vừa với đích? Hai thanh ghi nào được tổ lìỢp thành địa chỉ của lệnh sẽ được thực kế tiếp? Nên qná trình đọc bộ nhớ. Tại sao qná trình đọc bộ nhớ lại chiếm nhiều chu kỳ máy hơn so với truy cập thanh ghi? Thanh ghi AH bị sửa đổi, tại sao thanh ghi AX cũng thay đổi theo. Nội dun...
37 trang | Chia sẻ: thucuc2301 | Ngày: 23/11/2020 | Lượt xem: 708 | Lượt tải: 0
Dùng lệnh D đê xem nội dung vùng nhớ tại địa chỉ của ROM BIOS F000:0000. rương tự xem nội dung vùng nhớ RAM màn hình ở địa 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 chỉ 2000:0100 2000:0100 MOV AL,32 2000:0102 MOV AH, 4F 2000:0104 MOV cx, [200] 2000:0108 MOV WORD PTR [1800], 1 2000:010...
30 trang | Chia sẻ: thucuc2301 | Ngày: 23/11/2020 | Lượt xem: 755 | Lượt tải: 0
Bus ISA-8 bits : chạy ở tốc độ đồng hồ là 8 MHz truyền tải dữ liệu tối đa 8 MB/s. chạy ở tốc độ đồng hồ là 4.77 MHz truyền tải dữ liệu tối đa 6MB/s. chạy ở tốc độ đồng hồ là 4.77 MHz truyền tải dữ liệu tối đa 1MB/s. chạy ở tốc độ đồng hồ là 4.77 MHz truyền tải dữ liệu tối đa 12MB/s. Bus ISA-16 bits : chạy ở tốc độ đồng hồ là 812 MHz truyền t...
112 trang | Chia sẻ: thucuc2301 | Ngày: 23/11/2020 | Lượt xem: 715 | Lượt tải: 0