DE 7 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ính giá trị của biểu thức sau (N là số nguyên dương) với độ chính xác 3 chữ số sau dấu thập phân.
Khi chương trình chạy yêu cầu có dạng sau :
Hay vao N : 5
Tong tu 1 den 5 la : 15
Gia tri bieu thuc la : 2.142
Yêu cầu :
• N vào từ bàn phím,
• Tính tổng và hiện lên màn hình ,
• Tính và hiện giá trị của biểu thức ,
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âu 2:
Hãy viết chương trình bằng cách liên kết ngôn ngữ bậc cao (C hoặc C++) với Assembly tính tổng các thành phần chẵn của dãy số nguyên theo sự phân công như 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ính tổng các thành phần chẵn của dãy số nguyên do Assembly viết
Hiện kết quả giá trị tổng các thành phần chẵn của dãy số nguyên ra màn hình.
• Module của Assembly viết chương trình con tính tổng các thành phần chẵn của dãy số nguyên.
Câu 3 :
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 máy in nối tiếp hay không và có cổng LPT nào hay không và nếu có thì máy cổng ?
Khi chương trình chạy ví dụ có dạng :
Cong may in noi tiep : Co
So luong cong LPT : 3
Chú ý : Giả thiết cho trước LIB1.ASM. 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: AzTruyen.Top