1. Trang chủ
  2. » Giáo án - Bài giảng

đề cương và đáp án môn vi xử lý

48 644 8

Đ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

Thông tin cơ bản

Định dạng
Số trang 48
Dung lượng 516,69 KB

Nội dung

MỤC LỤC - VXL Loại điểm Câu 1.1 Một ô nhớ hệ VXL 8086 có địa vật lý 7A45CH, tính địa lệch (offset ) địa đoạn 75FAH? Khi CPU thực nạp lệnh địa CS= ?, IP= ? Địachỉvậtlý=Thanh_ghi_đọan×16+Thanh_ghi_lệch  Địa lệch (offset) : 7A45CH-75FA0H = 44BCH CS = 75FAH IP = 44BCH (Chú ý : Phép nhân với 16 (hay 10H) có cách thêm bít (hay 0H) vào bên phải) Câu 1.2 Một ô nhớ hệ VXL 8086 có địa vật lý 9B4C6H, tính địa đoạn địa lệch (offset) 31A6H? Khi CPU thực nạp lệnh địa CS= ?, IP= ? Địachỉvậtlý=Thanh_ghi_đọan×16+Thanh_ghi_lệch 9B4C6H - 31A6H = 98320H => Địa đoạn 9832H CS = 9832H IP = 31A6H Câu 1.3 Hãy viết định nghĩa liệu cho biến sau: a Một biến kiểu Word tên W1, khởi tạo với giá trị 57BH b W1 DW 57BH Một biến kiểu Word tên W2, không khởi tạo c W2 DB ? Một biến kiểu Byte tên X1, khởi tạo với giá trị 120 d X1 DB 120 Một mảng kiểu Byte tên MB, khởi tạo với giá trị đầu: 5D, 32H, 1FH, ‘C’, 0011B MB DB 5D, 32H, 1FH, ‘C’, 0011B Câu 1.4 Hãy viết định nghĩa liệu cho biến sau: a Một kiểu xâu ký tự tên MSG, với giá trị gán ‘Xau KT’ b MSG DB ‘Xau KT’ Một biến kiểu ký tự tên KT, khởi tạo với giá trị ‘A’ c KT DB ‘A’ Một biến kiểu Word tên X1, không khởi tạo d X1 DW ? Một mảng kiểu Byte tên MB, khởi tạo với giá trị đầu: 12, ‘A’, ‘F’, 123, 1AH MB DB 12, ‘A’, ‘F’, 123, 1AH Câu 1.5 Khung chương trình hợp ngữ để dịch dạng *.EXE? Model small Stack 100 Data ; định nghĩa cho biến để Code MAIN Proc ; Khởi đầu cho DS MOV AX, @Data MOV DS, AX ; Các lệnh chương trình để ; Trở DOS dùng hàm 4CH INT 21H MOV AH, 4CH INT 21 H MAIN Endp ; chương trình (nếu có) để END MAIN Câu 1.6 Khung chương trình hợp ngữ để dịch dạng *.COM? Model Tiny Code ORG 100h START: JMP CONTINUE ; định nghĩa cho biến để CONTINUE: MAIN Proc ; lệnh chương trình để INT 20H ; Trở DOS MAIN Endp ; chương trình (nếu có) để END START Câu 1.7 Trình bày phương pháp định địa segment:offset ? Tại nói phương pháp định địa có tính chất đa trị ? Cho ví dụ minh họa ? Nội dung ghi đoạn (16bit) xác định địa đoạn (địa ô nhớ đầu đoạn) Nội dung ghi lệch (16bit) xác định địa lệch (độ lệch) ô nhớ cụ thể so với địa đoạn Cặp địa segment: offset địa logic Địa vật lý ô nhớ có công thức : Địachỉvậtlý=Thanh_ghi_đọan×16+Thanh_ghi_lệch Phương pháp có tính đa trị từ địa vật lý ta tạo giá trị khác ghi đoạn ghi lệch, nên có vô số địa logic tùy vào cách lựa chọn đoạn Ví dụ : Địa vật lý 12345H tạo từ giá trị: Thanh ghi đoạn Thanh ghi lệch 1000H 2345H 1200H 0345H 1004H 2305H 1.4 Một ô nhớ hệ VXL 8086 có địa vật lý 7A45CH, tính địa lệch (offset ) địa đoạn 75FAH? Khi CPU thực nạp lệnh địa CS= ?, IP= ? Địachỉvậtlý=Thanh_ghi_đọan×16+Thanh_ghi_lệc h  Địa lệch (offset) : 7A45CH-75FA0H = 44BCH CS = 75FAH IP = 44BCH (Chú ý : Phép nhân với 16 (hay 10H) có cách thêm bít (hay 0H) vào bên phải) 1.5 Một ô nhớ hệ VXL 8086 có địa vật lý 9B4C6H, tính địa đoạn địa lệch (offset) 31A6H? Khi CPU thực nạp lệnh địa CS= ?, IP= ? Địachỉvậtlý=Thanh_ghi_đọan×16+Thanh_ghi_lệc h 9B4C6H - 31A6H = 98320H => Địa đoạn 9832H CS = 9832H IP = 31A6H 1.8 Hãy viết định nghĩa liệu cho biến sau: a) b) c) d) Một biến kiểu Word tên W1, khởi tạo với giá trị 57BH W1 DW 57BH Một biến kiểu Word tên W2, không khởi tạo W2 DB ? Một biến kiểu Byte tên X1, khởi tạo với giá trị 120 X1 DB 120 Một mảng kiểu Byte tên MB, khởi tạo với giá trị đầu: 5D, 32H, 1FH, ‘C’, 0011B MB DB 5D, 32H, 1FH, ‘C’, 0011B 1.9 Hãy viết định nghĩa liệu cho biến sau: a) b) c) d) Một kiểu xâu ký tự tên MSG, với giá trị gán ‘Xau KT’ MSG DB ‘Xau KT’ Một biến kiểu ký tự tên KT, khởi tạo với giá trị ‘A’ KT DB ‘A’ Một biến kiểu Word tên X1, không khởi tạo X1 DW ? Một mảng kiểu Byte tên MB, khởi tạo với giá trị đầu: 12, ‘A’, ‘F’, 123, 1AH MB DB 12, ‘A’, ‘F’, 123, 1AH 1.10 Khung chương trình hợp ngữ để dịch dạng *.EXE? Model small Stack 100 Data ; định nghĩa cho biến để Code MAIN Proc ; Khởi đầu cho DS MOV AX, @Data MOV DS, AX ; Các lệnh chương trình để ; Trở DOS dùng hàm 4CH INT 21H MOV AH, 4CH INT 21 H MAIN Endp ; chương trình (nếu có) để END MAIN 1.11 Khung chương trình hợp ngữ để dịch dạng *.COM? Model Tiny Code ORG 100h START: JMP CONTINUE ; định nghĩa cho biến để CONTINUE: MAIN Proc ; lệnh chương trình để INT 20H ; Trở DOS MAIN Endp ; chương trình (nếu có) để END START 1.16 Trình bày phương pháp định địa segment:offset ? Tại nói phương pháp định địa có tính chất đa trị ? Cho ví dụ minh họa ? Nội dung ghi đoạn (16bit) xác định địa đoạn (địa ô nhớ đầu đoạn) Nội dung ghi lệch (16bit) xác định địa lệch (độ lệch) ô nhớ cụ thể so với địa đoạn Cặp địa segment: offset địa logic Địa vật lý ô nhớ có công thức : Địachỉvậtlý=Thanh_ghi_đọan×16+Thanh_ ghi_lệch Phương pháp có tính đa trị từ địa vật lý ta tạo giá trị khác ghi đoạn ghi lệch, nên có vô số địa logic tùy vào cách lựa chọn đoạn Ví dụ : Địa vật lý 12345H tạo từ giá trị: Thanh ghi đoạn Thanh ghi lệch 1000H 2345H 1200H 1004H 0345H 2305H Loại điêmr 2.1.Trình bày sơ đồ khối hệ vi xử lý tiêu biểu giải thích ngắn gọn vai trò khối chức chính? Trong sơ đồ ta thấy rõ khối chức hệ vi xử lý gồm: _Khối xử lý trung tâm (CPU) _Bộ nhớ bán dẫn (ROM-RAM) _Khối phối ghép với thiết bị ngoại vi (I/O) _Các bus truyền thông tin Ba khối chức đầu liên hệ với thông qua qập đường dây để truyền tín hiệu gọi chung Bus hệ thống Bus hệ thống bao gồm bus thành phần ứng với tín hiệu địa chỉ, liệu điều khiển ta có bus địa chỉ, bus liệu bus điều khiển CPU đóng vai trò chủ đạo hệ vi xử lý Bộ nhớ bán dẫn hay gọi nhớ phận khác quan trọng hệ vi xử lý Khối phối ghép vào/ra (I/O) tạo khả giao tiếp hệ vi xử lý với giới bên Buýt địa (address bus) thường có từ 16, 20, 24, 32 hay 64 đường dây song song chuyển tải thông tin bít địa Buýt liệu (data bus) thường có từ 8, 16, 20, 24, 32, 64 ( hơn) đường dây tùy theo vi xử lý cụ thể Số lượng đường dây định số bít liệu mà CPU có khả xử lý lúc Buýt điều khiển (control bus) thường gồm hàng chục đường dây tín hiệu khác Mỗi tín hiệu điều khiển có chiều định 2.2.Trình bày sơ đồ chức vi xử lý giải thích vai trò khối chức trình thực chương trình? Thanh ghi lệnh: lưu lệnh Sau nạp mã lệnh từ nhớ, vi xử lý lưu mã lệnh ghi lệnh Giá trị ghi vi xử lý giải mã để xác định lệnh Bộ đếm chương trình: chứa địa lệnh hay mã thực thi (op-code) Thông thường, ghi chứa địa câu lệnh kế Thanh ghi địa nhớ: chứa địa liệu Vi xử lý sử dụng địa trỏ trực tiếp tới nhớ Thanh ghi dùng chung: dùng thể lưu hầu hết kết tính toán đơn vị xử lý sô học lô-gíc ALU Thanh ghi dùng để trao đổi liệu với thiết bị vào/ra ALU thực tất thao tác xử lý liệu bên vi xử lý phép toán lô-gíc, số học Chức đơn vị điều khiển CU đọc giải mã lệnh từ nhớ chương trình 2.3.Phân biệt kiến trúc RISC CISC ? Thiết kế vi xử lý RISC sử dụng điều khiển cứng (hardwired control) không sử dụng vi mã Tất lệnh RISC có định dạng cố định việc sử dụng vi mã không cần thiết Vi xử lý RISC xử lý hầu hết lệnh chu kỳ Tập lệnh vi xử lý RISC chủ yếu sử dụng lệnh với ghi, nạp lưu Tất lệnh số học lô-gíc sử dụng ghi, lệnh nạp lưu dùng để truy nhập nhớ Các lệnh có định dạng cố định chế độ địa Vi xử lý RISC có số ghi dùng chung Vi xử lý RISC xử lý vài lệnh đồng thời thường áp dụng kỹ thuật đường ống (pipeline) Các chương trình phức tạp cần vài lệnh với vài chu trình nạp 10 vi xử lý CISC bao gồm số lượng lớn lệnh nhiều chế độ địa mà nhiều kiểu sử dụng Với CISC hầu hết lệnh truy nhập nhớ RISC có lệnh nạp lưu Do tập lệnh phức tạp, CISC cần đơn vị điều khiển phức tạp vi chương trình Kiến trúc CISC khó triển khai kỹ thuật đường ống RISC cần số lượng lớn lệnh để thực nhiệm vụ Tuy nhiên, RISC Chương trình Model Small Stack 100H Data Nhiet EQH 100H Đk 105H Code Start MOV AX, @DATA MOV DS,AX Bắt đầu IN AL,nhietdo CMP AL,128 JG Batbep CMP AL,70 JL BATBEP CMP AL,100 JG TATBEP JMP BATDAU BATBEP MOV BL,1 OUT DIEUKHIEN,BL JMP BATDAU 34 TATBEP MOV BL,0 OUT DIEUKHIEN,BL JMP BATDAU MOV AH,4CH INT 21H END START 3.13 Cho mạch điều khiển đèn (như hình vẽ) nối với hệ vi xử lý 8086 cổng 120H Biết đèn bật sáng bít điều khiển tương ứng nhận giá trị Ngược lại bít điều khiển đèn tắt Vẽ lưu đồ viết chương trình (bằng ngôn ngữ assembly) tạo hiệu ứng sau: 1.Tất đèn bật tắt liên tục với khoảng trễ hai lần bật tắt 200 chu kỳ lệnh NOP 2.Tạo hiệu ứng hai đèn kế chạy liên tục từ trái sang phải, bước dịch chuyển tương ứng với đèn, với khoảng nghỉ bước dịch chuyển 150 chu kỳ lệnh NOP a MODEL SMALL 35 STACK 100H DATA CODE START: MOV AX,@DATA MOV DS,AX TIEPTUC: MOV AL,FFH OUT (110H),AL; MOV CX,250; TRE1 NOP LOOP TRE1 MOV AL,0 OUT (110H),AL MOV CX,250 TRE2 NOP LOOP TRE2 JMP TIEPTUC END START b MODEL SMALL 36 STACK 100H DATA CODE START MOV AX,@DATA MOV DS,AX MOV AL,00000001b OUT DIEUKHIEN,AL ; BẬT ĐÈN TIEPTUC MOV CX,150 TRE NOP LOOP TRE ROL AL,1 OUT DIEUKHIEN,AL JMP TIEPTUC MOV AH,4CH INT 20H END START 3.17 Viết đoạn chương trình (bằng ngôn ngữ assembly) cho 8251 nối với cổng 12E4H thực công việc sau: 1.Xác lập 8251 hoạt động chế độ đồng trong, sử dụng ký tự đồng bộ, ký tự mã hoá bít, không dùng kiểm tra chắn lẻ 2.Viết đoạn chương trình (vẽ lưu đồ) kiểm tra trạng thái đường phát, đường phát sẵn sàng gửi byte liệu (từ biến out_data) cổng phát 8251 37 C/D (A0) RD WR Thanh ghi 0 Thanh ghi đệm thu (Đọc) Thanh ghi phát (Ghi) đệm 1 Thanh ghi thái (Đọc) trạng 1 Thanh ghi khiển (Ghi) điều Bài làm -Theo có: 8251 hđ chế độ đồng Sd ký tự đồng SCS ESD=0 Ko sử dụng parity EP=0, PEN=0 Độ dài ký tự bits=>L2L1=10 =>CW: 00001000=8 H 2.Kiểm tra trạng thái đường phát đường phát sẵn sang gửi byte DL< từ biến out_data> cổng 8251 38 .Mode Small Stack 100H Data congphat 12E4H Code Start Mov AX, @Data Mov DS,AX Mov Al,08H Mov (out_data), AL CMP AL,0 JE END JMP tiep Tiep: out congphat,out_data JMP END END: MOV AH, 4CH INT 21 H endStart 39 3.18 Viết đoạn chương trình (bằng ngôn ngữ assembly) cho 8251 nối với cổng EF0H thực công việc sau: 1.Xác lập 8251 hoạt động chế độ đồng dị bộ, tốc độ x16, ký tự mã hoá bít, với bít stop sử dụng kiểm tra chẵn lẻ 2.Viết đoạn chương trình (vẽ lưu đồ) kiểm tra trạng thái đường thu, đường thu có liệu đọc vào biến rd_data 40 Bài giải : 1.Xác lập 8251 hđ chế độ đồng dị bội, tốc độ x16, ký tự mã hóa =7bit, với bit stop sử dụng kiểm tra chẵn lẽ -XĐ từ điều khiển TG chế độ S2 S1 EP PEN L2 L1 B2 B1 1 -Số bit stop bit =>S2S1=11 -Sd kiểm tra chẵn lẻ PEN=1, bits parity lẻ -Đc dài ký tự bits=>L2L1=10 -tốc độ x16=> B2B1=10 -Cw=11011010 DA H 2.Kiểm tra trạng thái đường thu đường thu có liệu đọc vào biến rd_data 41 .Model Stack 100H Data DK EQU EF0H Code Mov AX,@Data Mov DS,AX Mov AL,DAH CMP AL, JE END Jmp Doc Doc: IN (rd_data),DK Jmp END END: Mov AH,4CH INT 21H endStart 42 3.11:Cho bàn phím nối với hệ vi xử lý 8086 cổng vào 16H cổng 15H: 1.Viết đoạn chương trình (bằng ngôn ngữ assembly) vẽ lưu đồ quét hàng bàn phím với độ trễ hàng 100 lệnh NOP MODEL Small Stack 100 Data Nhap EQU 16H Xuat EQU 15H Code MOV AX,@Data MOV DS,AX MOV AL,11101111B OUT Xuat,AL MOV CX,100 TRE1: NOP LOOP TRE1 ROL AL,1 OUT Xuat,AL MOV CX,100 TRE2: NOP LOOP TRE2 ROL AL,1 OUT Xuat,AL MOV CX,100 TRE3: NOP LOOP TRE3 ROL AL,1 OUT Xuat,AL MOV AH,4CH INT 21H 43 2.Viết đoạn chương trình (bằng ngôn ngữ assembly) vẽ lưu đồ đọc cổng vào để xác định trường hợp có phím bấm Thời gian ấn phím tối thiểu 100 lệnh NOP đọc phím bấm phải dùng lệnh IN đc dãy bit dùng SHR dịch phải lần test cờ CF CF =0 tức phím đc bấm Dem++; quét hàng Cuối dem==3 out Code BATDAU: MOV DL,11101111B MOV AL,DL OUT 16H,AL MOV CX,33 MOV BX,0 IN AL,15H MOV CX,4 LAP: SHR AL,1 JC LABEL INC BX LABEL: LOOP LAP ROL DL,1 MOV AL,DL OUT 16H,AL MOV CX,33 TRE2: NOP LOOP TRE2 IN AL,15H MOV CX,4 LAP2: SHR AL,1 JNC LABEL2 LOOP LAP2 44 LABEL2: INC BX ROL DL,1 MOV AL,DL OUT 16H,AL ROL AL,1 MOV CX,33 TRE3: NOP LOOP TRE3 IN AL,15H MOV CX,4 LAP3: SHR AL,1 JNC LABEL3 LOOP LAP3 LABEL3: INC BX TRE1: NOP LOOP TRE1 ROL DL,1 MOV AL,DL OUT 16H,AL LAP4: SHR AL,1 JNC LABEL4 LOOP LAP4 LABEL4: INC BX CMP BX,3 JE THOAT JMP BATDAU THOAT: 45 Câu hỏi 3.12: Vẽ lưu đồ viết chương trình điều khiển bếp (như hình vẽ) cho nhiệt độ bếp ổn định dải 70oC đến 100oC Biết hệ thống nối với hệ vi xử lý 8086 Cổng đọc nhiệt độ cổng 100H, giá trị nhiệt độ số bít có dấu tương ứng với giá trị nhiệt độ thực tế Cổng điều khiển bếp 105H, đưa giá trị cổng bếp tắt đưa giá trị bếp đốt .MODEL Small Stack 100 Data Doc EQU 100H DieuKhien EQU 105H Code MOV AX,@Data MOV DS,AX BatDau: MOV DX,Doc IN AL,DX CMP AL,10000000B ; nhiet do

Ngày đăng: 01/07/2016, 07:16

TỪ KHÓA LIÊN QUAN

w