Với chương trình hợp ngữ được viết theo khai báo directive điều khiển segment dạng đơn giản, khi viết chương trình con không khai báo tường minh NEAR/FAR thì trong các trường hợp khai báo sau chương trình con là NEAR khi nào ?
A. .MODEL tiny/
small/compact
B. Loại nào cũng được
C. .MODEL large/
medium/ huge
Thay vì phải viết đi viết lại nhiều lần 1 khối lệnh trong 1 chương trình thì sử dụng directive INCLUDE để chèn khối lệnh đó từ 1 tệp ngoài vào chương trình đang viết. Hãy cho biết khi sử dụng directive INCLUDE như vậy thì có tiết kiệm được vùng nhớ hay không khi chèn khối lện đó nhiều lần?
A. Không
B. Tùy tình huống
C. Có
Chương trình đa tệp thuần túy hợp ngữ thì module nào khai báo PUBLIC cho tên chương trình con mà các module đều dùng ?
A. Module nào cũng được
B. Module sử dụng chương trình con (module gọi chương trình con)
C. Module viết chương trình con
Chương trình đa tệp thuần túy hợp ngữ phải sử dụng các directive nào để các nhãn dùng (các nhãn mà các module đều dùng) chung hiểu nhau ?
A. Chỉ sử dụng directive PUBLIC
B. Chỉ sử dụng directive EXTRN
C. Tất cả các phương án
Directive INCLUDE chèn nội dung 1 tệp ngoài vào chương trình đang viết. Nếu sử dụng directive INCLUDE nhiều lần nội dung 1 tệp ngoài vào chương trình thì trong nội dung của tệp ngoài có cho phép có nhãn nhảy hay không ?
A. Có
B. Tùy tình huống
C. Không
Chức năng nào của ngắt int 21h cho phép nhận 1 ký tự từ bàn phím?
Ngắt BIOS int 10h là ngắt gồm các chức năng liên quan đến thiết bị nào ?
A. Ổ đĩa
B. Màn hình
C. Bàn phím
Chức năng nào của ngắt INT 21h cho phép mở tệp mới đã có?
A. Chức năng 3Fh
B. Chức năng 3Eh
C. Chức năng 3Ch
D. Chức năng 40h
E. Chức năng 3Dh
Trong các chức năng liên quan đến thư mục (tạo, xóa, chuyển) và tệp (tạo, mở, xóa ...) thì xâu ký tự chứa tên thư mục hoặc tệp phải kết thúc bằng gì?
A. Bằng \0
B. Bằng ký tự ‘0’
C. Bằng Enter (0dh)
D. Bằng dấu ‘$’
Độ lớn của bảng vectơ ngắt và vị trí của bảng vectơ ngắt?
A. 128 byte và nằm ở đầu vùng nhớ
B. 1024 byte và nằm ở đầu vùng nhớ
C. 512 byte và nằm ở cuối vùng nhớ
D. 256 byte và nằm ở cuối vùng nhớ
Sau lệnh nhân MUL,/IMUL và lệnh chia DIV, IDIV có mấy toán hạng xuất hiện. Toán hạng ẩn nằm ở đâu?
A. Tùy tình huống
B. Có 2 toán hạng
C. Không có toán hạng nào
D. Chỉ có một toán hạng xuất hiện. Tùy thuộc vào kích cỡ của toán hạng xuất hiện sẽ suy ra toán hạng thứ 2 (ẩn) nằm ở đâu.
Với phép nhân nếu toán hạng xuất hiện là:
- 8 bit thì toán hạng nhân thứ 2 (ẩn) nằm ở AL,
- 16 bit thì toán hạng thứ 2 (ẩn) nằm ở AX.
Với phép chia, nếu toán hạng xuất hiện (só chia) là:
- 8 bit thì toán hạng ẩn (số bị chia) nằm ở AX
- bit thì toán hạng ẩn (số bị chia) nằm ở DX:AX
Lệnh: LEA BX,m (trong đó m là một biến) có ý nghĩa gì?
A. Đưa phần địa chỉ segment ô nhớ cấp phát cho biến m vào thanh ghi BX
B. Đưa phần địa chỉ offset ô nhớ được cấp phát cho biến m vào thanh ghi BX. Giá trị trong BX là con trỏ offset của ô nhớ cấp pháp cho biến
C. Xóa trạng thái các bit cờ
D. Đưa giá trị biến m vào thanh ghi BX
Một chương trình dạng .COM có bắt buộc sử dụng directive ORG 100h không?
A. Bắt buộc phải có
B. Tùy tình huống
C. Không cần
Tính giá trị an bằng cách liên kết ngôn ngữ C/C++ với hợp ngữ theo cách viết tách biệt tệp C/C++ và tệp Assembly theo sự phân công sau:
Module C/C++ thực hiện các nhiệm vụ sau:
Nhận a, n từ bàn phím
Gọi chương tình con tính an do module hợp ngữ viết
Hiện kết quả
Module Assembly thực hiện nhiệm vụ sau: viết chương trình con tính an
Với giả thiết hàm do Assembly viết có 2 không đối (a, n sẽ là tham số thực của hàm) thì trong module C/C++ a, n phải khai báo ở đâu?
A. Khai báo ở đâu cũng được
B. Khai báo biến toàn cục (biến ngoài)
C. Khai báo cục bộ trong main()
Con trỏ (cursor) có ở chế độ (mode) nào của màn hình ?
A. Văn bản
B. Đồ họa
C. Cả văn bản và đồ họa
Các lệnh điều khiển khi dịch chương trình (directive) có sinh ra mã máy để chạy chương trình hay không?
A. Không sinh ra mã máy để chạy chương trình mà chỉ hỗ trợ cho chương trình dịch
B. Tùy tình huống
C. Có sinh ra mã máy để chạy chương trình
Những vấn đề gì cần lưu ý khi viết chương trình ngôn ngữ Assembly (hợp ngữ) để sau khi dịch và liên kết được tệp thực hiện đuôi .COM
A. Cần lưu ý khi liên kết
B. Cần lưu ý:
1.Chương trình chỉ có 1 phân đoạn mã máy,
2.Khai báo biến trong vùng nhớ mã máy,
3.Sử dụng directive ORG,
4.Tốt nhất là trở về DOS bằng ngắt int 20h
5. Khi liên kết sử dụng tùy chon t, cụ thể là:
tlink/t têntệp
C. Cần lưu ý khi khai báo biến
D. Không cần lưu ý gì. Viết như để tệp thực hiện có đuôi .EXE
Vai trò của directive GLOBAL của chương trình dich Turbo Assembler của hãng Borland?
A. Chỉ thay cho directive PUBLIC
B. Tùy cách sử dụng, directive GLOBAL có thể thay cho directive PUBLIC hay EXTRN. Nếu GLOBAL cho các nhãn đã được xác lập thì vai trò của nó là PUBLIC, còn nếu các nhãn đứng sau GLOBAL chỉ xác định kiểu nhãn thì vai trò GLOBAL là EXTRN
C. Chỉ thay cho directive EXTRN
Chương trình đa tệp thuần túy hợp ngữ thì với nhãn là tên các biến nhớ thì việc khai báo EXTRN các nhãn dùng chung đó được tiến hành ở đâu ?
A. Chỉ ở module của chương trình chính
B. Ở module nào cũng được
C. Chỉ ở module chương trình con
Có thể dùng chung các thanh ghi làm toán hạng trong các lệnh của thân chương trình chính và chương trình con được không?
A. Tùy tình huống
B. Được, song phải bảo vệ giá trị các thanh ghi trong chương trình con trước khi sử dụng và hồi phục lại giá trị các thanh ghi trước khi quay về chương trình chính.
C. Không được
D. Được, mà không cần quan tâm đến điều gì cả