DE 2 ASM
ĐỀ THI MÔN HỢP NGỮ VÀ LẬP TRÌNH HỆ THỐNG
(thời gian 90 phút)
Câu 1:
Hãy viết chương trình thuần túy Assembly tìm giá trị lớn nhất của một dãy số nguyên.
Khi chương trình chạy ví dụ có dạng sau :
Hay vao so luong thanh phan cua day : 4
a[0]= 120
a[1]= -30
a[2]= 311
a[3]= 21
Gia tri lon nhat cua day so nguyen la : 311
Co tiep tuc CT (c/k) ? _
Chú ý : Phải viết chương trình theo cả 2 cách :
Cách 1 : Thuần túy Assembly với yêu cầu sau :
• Số lượng thành phần của dãy số vào từ bàn phím,
• Vào các số nguyên và đưa vào một mảng,
• Tìm giá trị lớn nhất của dãy số nguyên và hiện ra màn hình.
Giả thiết cho trước hai tệp :
LIB1.ASM chứa 2 MACRO xóa màn hình (có tên là CLRSCR) và hiện 1 xâu ký tự kết thúc bằng '$' ra màn hình (có tên là HienString) và LIB2.ASM chứa 2 chương trình con nhận 1 số nguyên từ bàn phím (có tên là VAO_SO_N) và hiện 1 số nguyên có trong AX ra màn hình dạng cơ số 10 (có tên là HIEN_SO_N).
Cách 2 : Liên kết giữa ngôn ngữ bậc cao (C hoặc C++) với Assembly theo yêu cầu sau :
• Module của ngôn ngữ bậc cao thực hiện các nhiệm vụ sau :
Nhận số lượng thành phần của dãy số,
Nhận các số nguyên và đặt vào trong mảng,
Gọi chương trình con tìm giá trị lớn nhất của dãy số nguyên do Assembly viết
Hiện kết quả giá trị lớn nhất của dãy số nguyên ra màn hình
• Module của Assembly viết chương trình con tìm giá trị lớn nhất của dãy số nguyên.
Câu 2 :
Byte có địa chỉ 0h:[411h] của vùng dữ liệu ROM BIOS chứa một số thông tin của máy tính. Hãy viết chương trình thuần túy bằng Assembly cho biết máy tính đang dùng có cổng COM nào hay không và nếu có thì bao nhiêu cổng và cho biết địa chỉ các cổng COM đó (địa chỉ phải là dạng HEXA) khi biết rằng 2 byte có địa chỉ 0:400h và 0:401h chứa địa chỉ COM1.
Khi chương trình chạy ví dụ có dạng :
So luong cong COM la : 2
Dia chi cac cong COM la : 3F8 2F8
Chú ý : Giả thiết cho trước LIB1.ASM và LIB3.ASM (LIB3.ASM chứa chương trình con hiện giá trị có trong AX ra màn hình dạng HEXA). Nội dung byte dữ liệu ROM BIOS có địa chỉ 0h:[411h] như sau :
x x x
Bạn đang đọc truyện trên: TruyenTop.Vip