API có tác dụng như thế nào trên Windows?
Các dịch vụ hệ thống
Chức năng của người dùng
Một chương trình ứng dụng
Phần mềm để lập trình
Thư viện để lập trình
Bảng vectơ ngắt chứa gì và nằm ở đâu?
Chứa địa chỉ đầu của các chương trình con phục vụ ngắt và nằm ở RAM
Chứa mã máy của các chương trình con phục vụ ngắt và nằm ở ROM BIOS
Chứa mã máy lệnh đầu tiên của các chương trình con phục vụ ngắt và nằm ở ROM hoặc RAM đều được
Biết rằng 1 chương trình con phục vụ ngắt của hệ thống thường có nhiều chức năng. Vậy muốn sử dụng 1 chức năng nào đó của 1 ngắt hệ thống thì theo qui định số chức năng sẽ được đặt vào đâu?
Bất kỳ thanh ghi nào tùy người lập trình chọn
Thanh ghi AH
Thanh ghi AL
Bước nhảy của các lệnh nhảy có điều kiện phải
128 byte
64k
Không giới hạn
Byte có địa chỉ bao nhiêu của vùng dữ liệu ROM BIOS cho biết các thông tin liên quan đến DMA, số lượng cổng COM, số lượng cổng LPT, cổng joystick và cổng máy in nối tiếp ?
0:400h
0:410h
0:411h
Byte có địa chỉ bao nhiêu của vùng dữ liệu ROM BIOS cho biết các thông tin liên quan đến ổ mềm (có hay không và nếu có thì bao nhiêu ổ), FPU, số lượng kRAM có thêm trên mainboard và loại card điều khiển màn hình ?
0:400h
0:410h
0:411h
Các bước để lập trình đa luồng?
B1) Lập trình các lệnh xử lý luồngB2) Tạo luồng chạy hàm trên bằng lệnh “CreateThread”
B1) Lập trình hàm bất kỳB2) Tạo luồng chạy hàm trên
B1) Lập trình hàm xử lý luồngB2) Tạo luồng chạy hàm trên bằng lệnh “CreateThread”
B1) Lập trình hàm xử lý luồngB2) Tạo luồng chạy hàm trên bằng lệnh “new Thread”
B1) Lập trình hàm xử lý luồngB2) Tạo luồng chạy hàm trên bằng lệnh “StartThread”
Các bước sử dụng thư viện theo kiểu run-time là?
B1) Nạp thư viện bằng lệnh “LoadLibrary”B2) Lấy các thành phần muốn dùng trong thư việnB3) Sử dụng các thành lấy đượcB4) Giải phóng thư viện bằng lệnh “FreeLibrary”
B1) Nạp thư viện bằng lệnh “LoadLibrary”B2) Lấy địa chỉ các thành phần muốn dùng bằng lệnh “GetProcAddress”B3) Giải phóng thư viện bằng lệnh “FreeLibrary”
B1) Nạp thư viện bằng lệnh “LoadLibrary”B2) Lấy địa chỉ các thành phần muốn dùng bằng lệnh “GetProcAddress”B3) Sử dụng bất kỳ thành nào trong thư việnB4) Giải phóng thư viện bằng lệnh “FreeLibrary”
B1) Nạp thư viện bằng lệnh “LoadLibrary”B2) Lấy địa chỉ các thành phần muốn dùng bằng lệnh “GetProcAddress”B3) Sử dụng các thành phần lấy đượcB4) Giải phóng thư viện bằng lệnh “FreeLibrary”
B1) Nạp thư viện bằng lệnh “LoadLibrary”B2) Sử dụng các thành trong thư việnB4) Giải phóng thư viện bằng lệnh “FreeLibrary”
Các lệnh để tạo cửa sổ và hiển thị lên màn hình (tên lớp cửa sổ đăng ký là “CS1”)?
CreateWindowShowWindow
CreateWindowShowWindowUpdateWindow
CreateWindowsShowWindowsUpdateWindows
NewWindowShowWindow
NewWindowShowWindowPaintWindow
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?
check_box Không sinh ra mã máy để chạy chương trình mà chỉ hỗ trợ cho chương trình dịch
Tùy tình huống
Có sinh ra mã máy để chạy chương trình
Các lệnh trong nhóm di chuyển dữ liệu khi thực hiện có làm thay đổi trạng thái các bit cờ không?

Không
Tùy tình huống
Các ngắt của BIOS có số ngắt bao nhiêu và mã máy của chương trình con phục vụ ngắt nằm ở đâu?
Số ngắt từ int 0h đến int 1fh và mã máy CT con phục vụ ngắt nằm ở RAM
Số ngắt từ int 0h đến int 1fh và mã máy CT con phục vụ ngắt nằm ở ROM BIOS
Số ngắt từ int 20h đến int 0ffh và mã máy CT con phục vụ ngắt nằm RAM
Số ngắt từ int 20h đến int 0ffh và mã máy CT con phục vụ ngắt nằm ROM BIOS
Các ngắt của DOS có số ngắt bao nhiêu và mã máy của chương trình con phục vụ ngắt nằm ở đâu?
Số ngắt từ int 0h đến int 1fh và mã máy CT con phục vụ ngắt nằm ở RAM
Số ngắt từ int 0h đến int 1fh và mã máy CT con phục vụ ngắt nằm ở ROM BIOS
Số ngắt từ int 20h đến int 0ffh và mã máy CT con phục vụ ngắt nằm RAM
Số ngắt từ int 20h đến int 0ffh và mã máy CT con phục vụ ngắt nằmROM BIOS
Các thanh ghi của máy tính 32 bit có độ dài bao nhiêu bit?
Tất cả các thanh ghi đều có độ dài 32 bit trừ các thanh ghi đoạn (segment) vẫn là 16 bit
Tất cả đều có độ dài 16 bit
Tất cả đều có độ dài 32 bit
Các thanh ghi segment của máy tính cấu trúc 32 bit có độ dài bao nhiêu bit?
check_box Tất cả các thanh ghi segment của máy tính 32 bit đều có độ dài 16 bit
32 bit
64 bit
8 bit
Các thiết bị vào/ra chuẩn có thể coi là một tệp với các thẻ tệp (file handle) mặc định. Số thẻ tệp có giá trị bao nhiêu mặc định cho thiết bị ra chuẩn (màn hình)?
0
1
2
3
4
Các thiết bị vào/ra chuẩn của máy tính có thể coi là một tệp với các thẻ tệp (file handle) mặc định. Số thẻ tệp có giá trị bao nhiêu mặc định cho thiết bị vào chuẩn (bàn phím)?
0
1
2
3
4
Các vấn đề gì cần lưu ý khi liên kết theo cách viết tách biệt ngôn ngữ bậc cao (thường thể hiện chương trình chính) và hợp ngữ (thường thể hiện hàm)?
check_box Cần lưu ý đến 3 vấn đề:1.Vấn đề đa tệp: Các nhãn dùng chung (cả hai tệp đều dùng) phải hiểu nhau thông qua khai báo PUBLIC, EXTRN (với hợp ngữ) và extern với C/C++),2.Vấn đê thêm dấu _ trước tên hàm Assembly (khi liên kết với C) và thêm @tên hàm$qx (khi liên kết với C++), trong đó x sẽ là:- v nếu hàm không đôi,- i nếu hàm có đối và tham số thực là tham trị,- pi/ni là hàm có đối con trỏ near/far và tham số thực là tham biến.3.Vấn đề tên hàm viết bằng Assembly mang giá trị trả về.
Chỉ lưu ý đến vấn đề đa tệp
Không cần lưu ý gì
Chỉ cần lưu ý đến tên hàm Assembly mang giá trị trả về
.
Cách để một chương trình ứng dụng truy cập API là?
check_box Viết lệnh gọi hàm API
Khai báo API trong chương trình
Không thể truy cập API
Máy tự động gọi đến API
Viết lệnh truy cập đến API
Cách dịch và liên kết của cách liên kết Inline Assembly?
check_box Quá trình dịch sẽ như sau:- Chương trình dịch của TC sẽ dịch tệp nguôn (đuôi .c hoặc .cpp) sang tệp có đuôi .asm,- Chương trình dịch TASM dịch tệp có đuôi .asm sang tệp đuôi .obj,-TLINK sẽ thực hiện việc liên kết để tạo ra tệp .exe.
Tùy tình huống
Chương trình dịch của ngôn ngữ Assembly sẽ đảm nhiệm hết
Chương trình dịch của TC sẽ đảm nhiệm hết.
Cách liên kết Inline Assembly có ưu, nhược gì?
check_box Ưu: Dễ viết.Nhược:Không cho phép có nhãn nhảy trong khối lệnh chèn vào C/C++. Suy ra khối lệnh Assembly yếu,Các lệnh Assembly “dịch nhờ” chương trình dịch của C/C++ do vậy đôi lúc sinh ra sai sót khi dịch.
Dễ viết song chương trình chạy chậm
Chạy nhanh song khó viết
Cách nào thực hiện việc hiện 1 xâu ký tự lên màn hình là dễ dàng nhất và tốt nhất trong lập trình Assembly (hợp ngữ)
check_box Khai báo xâu kết thúc bằng ‘$’, sau đó dùng chức năng thứ 9 của ngắt int 21h (DOS functions)
Dùng chức năng thứ 13h của ngắt int 10h
Khai báo xâu kết thúc bằng \0, sau đó viết chương trình hiện các ký tự cho đến khi gặp \0.
Cần viết 1 chương trình con để giải quyết cùng một vấn đề. Anh A “Tôi sẽ viết chương trình con không đối”. Anh B “Tôi sẽ viết chương trình con có đối”. Ai đúng, ai sai ?
Anh A đúng
Anh B đúng
Cả hai cùng có thể
Chức năng nào của ngắt INT 10h cho phép hiển thị 1 ký tự dạng teletype lên màn hình tại vị trí con trỏ đứng (không làm thay đổi các thuộc tính của màn hình) ?
check_box Chức năng 0Eh
Chức năng 8h
Chức năng 9h
Chức năng nào của ngắt INT 10h cho phép hiển thị nhiều lần1 ký tự có màu sắc lên màn hình tại vị trí con trỏ đứng ?
check_box Chức năng 9h
Chức năng 0Eh
Chức năng 8h
Chức năng nào của ngắt INT 21h cho phép đọc tệp?
Chức năng 3Ch
Chức năng 3Dh
Chức năng 3Eh
Chức năng 3Fh
Chức năng 40h
Chức năng nào của ngắt INT 21h cho phép đổi lấy hoặc đặt thuộc tính tệp?
Chức năng 41h
Chức năng 42h
Chức năng 43h
Chức năng 56h
Chức năng 57h
Chức năng nào của ngắt INT 21h cho phép đổi tên tệp?
Chức năng 41h
Chức năng 42h
Chức năng 43h
Chức năng 56h
Chức năng 57h
Chức năng nào của ngắt INT 21h cho phép ghi tệp?
Chức năng 3Ch
Chức năng 3Dh
Chức năng 3Eh
Chức năng 3Fh
Chức năng 40h
Chức năng nào của ngắt INT 21h cho phép mở tệp mới đã có?
Chức năng 3Ch
Chức năng 3Dh
Chức năng 3Eh
Chức năng 3Fh
Chức năng 40h
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?
0Ah
1h
9h
Chức năng nào của ngắt int 21h cho phép nhận 1 xâu ký tự từ bàn phím và để vào trong 1 vùng đệm (cho phép đánh sai và sửa)?
0Ah
1h
9h
Chức năng nào của ngắt INT 21h cho phép tạo tệp mới và mở?
Chức năng 3Ch
Chức năng 3Dh
Chức năng 3Eh
Chức năng 3Fh
Chức năng 40h
Chức năng nào trong các chức năng sau của ngắt INT 10h cho phép xác lập chế độ (mode) cho màn hình ?
check_box Chức năng 0h
Chức năng 0Fh
Chức năng 2h
Chức năng 3h
Chương trình con thuần túy hợp ngữ (cả chương trình chính lẫn chương trình con đều là hợp ngữ) thì không có đối. Vậy khi liên kết ngôn ngữ bậc cao với ngôn ngữ Assembly thì ngôn ngữ bậc cao có thể giả thiết chương trình con Assembly có đối hay không? Ai qui định số lượng đối và kiểu đối ?
Có và số lượng đối và kiểu đối do hợp ngữ quyết định
Có và số lượng đối và kiểu đối do ngôn ngữ bậc cao giả thiết
Không
Chương trình con và macro thì loại nào cho phép có đối?
Cả hai
Chương trình con
MACRO
Chương trình con và macro thì loại nào thực hiện nhanh hơn?
Bằng nhau
Chương trình con
MACRO
Chương trình con và macro thì loại nào tiết kiệm vùng nhớ?
Bằng nhau
Chương trình con
MACRO
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 ?
Chỉ sử dụng directive EXTRN
Chỉ sử dụng directive PUBLIC
Tất cả các phương án
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 ?
Module nào cũng được
Module sử dụng chương trình con (module gọi chương trình con)
Module viết chương trình con
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 ?
Chỉ ở module chương trình con
Chỉ ở module của chương trình chính
Ở module nào cũng được
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 PUBLIC các nhãn dùng chung đó được tiến hành ở đâu ?
Chỉ ở module chương trình con
Chỉ ở module của chương trình chính
Ở module nào cũng được
Chương trình được viết bằng ngôn ngữ Assembly (hợp ngữ) có ưu điểm gì?
check_box Chạy nhanh, tiết kiệm vùng nhớ và dễ dàng thâm nhập vào phần cứng của máy tính
Chạy nhanh
Dễ viết
Tiết kiệm vùng nhớ
Dễ tìm sai
Có mấy cách chuyển giao tham số giữa chương trình chính (thường do C/C++ đảm nhiệm) với chương trình con (thường do Assembly đảm nhiệm)?
check_box Có thể chuyển giao tham số theo 2 cách:Cách 1: Thông qua khai báo biến toàn cục và sử dụng directive PUBLIC và EXTRN (với hợp ngữ) và extern (với C/C++),Cách 2: Thông qua ngăn xếp khi ngôn ngữ C/C++ giả thiết hàm do Assembly có đối và khi gọi chương trình con, ngôn ngữ C/C++ đưa tham số thực vào ngăn xếp và hàm Assembly sẽ vào ngăn xếp lấy các giá trị đó ra mà dùng.
Chuyển giao qua thanh ghi
Chỉ thông qua biến nhớ
Chỉ thông qua ngăn xếp
Có mấy phương pháp đưa địa chỉ đầu của chương trình con phục vụ ngắt vào vị trí tương ứng của bảng vectơ ngắt ?
Cả hai cách
Chỉ có cách gián tiếp nhờ chức năng 25h của ngắt int 21h
Chỉ có cách trực tiếp
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?
check_box Đượ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, mà không cần quan tâm đến điều gì cả
Không được
Tùy tình huống
Có thể sử dụng dạng cơ số nào để thể hiện 1 hằng số trong lập trình Assembly?
Dạng bát phân (cơ số 8)
Dạng hexa(cơ số 16)
Dạng nhị phân (cơ số binary)
Dạng thập phân (cơ số 10)
Tất cả các dạng cơ số nêu trên
Có thể sử dụng mấy dạng directive điều khiển segment trong khi viết chương trình hợp ngữ ?
2 dạng: đơn giản và chuẩn
3 dạng
Chỉ 1 dạng chuẩn
Chỉ 1 dạng đơn giản
Con trỏ (cursor) có ở chế độ (mode) nào của màn hình ?
check_box Văn bản
Cả văn bản và đồ họa
Đồ họa
Cũng như mọi ngôn ngữ lập trình, việc sử dụng chương trình con trong lập trình Assembly (hợp ngữ) có ý nghĩa gì?
check_box Làm cho chương trình có cấu trúc và tiết kiệm vùng nhớ
Dễ dịch
Tiết kiệm vùng nhớ
Dễ viết
CX chứa số lần lặp của lệnh LOOP. Vậy CX có thể là một giá trị
1≤CX≤32767
Bất kỳ số nào
CX≥0
Tất cả các phương án
Đây là loại khai báo biến gì ?.DATA A DW 10 dup(?)
check_box A là 1 trường số có 10 thành phần mà mỗi thành phần là 2 byte không xác lập giá trị ban đầu
A là biến số 2 byte được gán giá trị ban đầu là 10
A là biến số có độ dài 10 byte
Để lập trình xử lý khi người dùng chọn mục trên menu ta thực hiện?
Kiểm tra thông điệp WM_COMMAND và xử lý nếu tham số kiểu UINT trong hàm thông điệp bằng số hiệu của mục chọn
Kiểm tra thông điệp WM_COMMAND và xử lý nếu tham số WPARAM trong hàm thông điệp bằng số hiệu của mục chọn
Kiểm tra thông điệp WM_COMMAND và xử lý trong hàm chính (WinMain)
Kiểm tra và xử lý nếu tham số kiểu WPARAM trong hàm thông điệp bằng số hiệu của mục chọn
Xử lý thông điệp WM_COMMAND trong hàm cửa sổ
Để vẽ một hình vuông cạnh 100, có hai đường chéo và bên trong có hình tròn nội tiếp ta dùng thứ tự các lệnh sau (với HDC là )?
check_box Rectangle(,0,0,100,100);MoveToEx(,0,0,0);LineTo(,100,100);MoveToEx(,0,100,0);LineTo(,100,0);AngleArc(50,50,50,0,360);
Rectangle(,0,0,100,100);Line (,0,0,100,100);Line(,0,100,100,0);AngleArc(50,50,50,0,360);
Rectangle(,0,0,100,100);LineTo(,0,0,100,100);LineTo(,0,100,100,0);AngleArc(50,50,50,0,360);
Rectangle(,0,0,100,100);MoveToEx(,0,0,0);LineTo(,100,100);MoveToEx(,0,100,0);LineTo(,100,0);AngleArc(0,0,100,0,360);
Rectangle(,0,0,50,100);MoveToEx(,0,0,0);LineTo(,50,100);MoveToEx(,0,100,0);LineTo(,50,0);Ellipse(0,0,50,100);
Địa chỉ các cổng của các thiết bị VÀO/RA của máy tính gồm mấy byte?
1 byte
2 byte
4 byte
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 ?

Không
Tùy tình huống
Directive nào xác lập biến 2 byte ?
check_box DW
DB
DD
Độ lớn của bảng vectơ ngắt và vị trí của bảng vectơ ngắt?
1024 byte và nằm ở đầu vùng nhớ
128 byte và nằm ở đầu vùng nhớ
256 byte và nằm ở cuối vùng nhớ
512 byte và nằm ở cuối vùng nhớ
Độ lớn vùng dữ liệu ROM BIOS và địa chỉ đầu vùng dữ liệu ROM BIOS?
1024 byte RAM và địa chỉ đầu là 0:100h
128 byte RAM và địa chỉ đầu là 0:0h
256 byte RAM và địa chỉ đầu là: 0:400h
Giả thiết có 1 đoạn chương trình như sau :.DATA A DW 100 dup(?) .CODE PS:LEA BX,AVậy nội dung thanh ghi BX chứa gì ?
check_box Phần địa chỉ OFFSET của A[0] (địa chỉ thành phần đầu tiên của trường)
Giá trị A[0]
Phần địa chỉ OFFSET của A[99] (địa chỉ thành phần cuối cùng của trường)
Hai thanh ghi nào trong các tổ hợp sau trỏ đến địa chỉ vùng nhớ chứa mã lệnh sẽ được thi hành kế tiếp ?
CS:IP
DS:SI
ES:DI
SS:SP
Hàm API để hiển thị thông báo trên màn hình có tên là?
Alert
MessageBox
MessageScreen
MsgBox
Toast
Hàm chính (WinMain) của chương trình trên Windows có 4 tham số với kiểu tương ứng là?
HINSTANCE, HANDLE, LPSTR, int
HINSTANCE, HINSTANCE, LPSTR, int
HINSTANCE, UINT, LPSTR, int
HWND, HINSTANCE, LPSTR, int
HWND, HINSTANCE, UINT, LPVOID
Hàm chính (WinMain) của chương trình trên Windows được khai báo như sau?
int WINAPI WinMain( HINSTANCE, HINSTANCE, LPSTR,int);
int WINAPI WinMain( HINSTANCE, LPSTR, int);
int WINAPI WinMan( HINSTANCE, HINSTANCE, LPSTR,int);
int WinMain( HINSTANCE, HINSTANCE, LPSTR,int);
int WinMain( HINSTANCE, HWND, LPSTR, int);
HDC là kiểu định danh cho ngữ cảnh thiết bị để làm gì?
Chứa đối tượng để vẽ đồ họa
Chứa dữ liệu về các tham số đồ họa như màu vẽ, màu tô, kiểu nét vẽ,…
Chứa dữ liệu về các thông tin cấu tạo cửa sổ
Chứa số hiệu cửa sổ khi vẽ
Chứa thông tin về các thông điệp cho việc vẽ đồ họa
Khai báo các thành phần chia sẽ giữa thư viện và chương trình là?
Sử dụng cặp “__declspec(dllexport)” và “__declspec(dllimport)” trong cả thư viện và chương trình
Sử dụng chỉ thị “__declspec(dllexport)” trong chương trình và “__declspec(dllimport)” trong thư viện
Sử dụng chỉ thị “__declspec(dllexport)” trong thư viện và “__declspec(dllimport)” trong chương trình
Sử dụng chỉ thị “__declspec(dllexport, dllimport)” trong cả thư viện và chương trình
Sử dụng chỉ thị “__decspec(dllexport)” trong thư viện và “__decspec(dllimport)” trong chương trình
Khi liên kết ngôn ngữ bậc cao C/C++ với hợp ngữ theo cách viết tách biệt tệp ngôn ngữ bậc cao và tệp của hợp ngữ thì tệp ngôn ngữ bậc cao C/C++ cần những khai báo gì với các nhãn dùng chung?
check_box Chỉ cần khai báo tường minh extern, không cần khai báo tường minh PUBLIC vì với các ngôn ngữ bậc cao nói chung và C/C++ nói riêng, bất kỳ một khai báo nào đều là PUBLIC rồi.
Cần khai báo tường minh PUBLIC và extern
Không cần khai báo gì.
Khi liên kết ngôn ngữ bậc cao với hợp ngữ theo cách viết riêng biệt tệp ngôn ngữ bậc cao và tệp của hợp ngữ thì các nhãn dùng chung (ngôn ngữ bậc cao và hợp ngữ đều dùng). Vậy nhãn ở đây là gì ?
check_box Tên biến nhớ, tên chương trình con và tên ký hiệu thay cho 1 hằng số
Tên biến nhớ
Tên chương trình con
Tên ký hiệu (symbol) thay cho 1 hằng số
Tên nhãn nhảy
Khi liên kết ngôn ngữ bậc cao với hợp ngữ theo cách viết riêng biệt tệp ngôn ngữ bậc cao và tệp của hợp ngữ thì trong module hợp ngữ phải sử dụng directive nào để xin phép dùng một nhãn mà ngôn ngữ bậc cao đã xác lập và cho phép ?
check_box Directive EXTRN
Directive PUBLIC
Không cần directive nào cả
Khi liên kết ngôn ngữ bậc cao với hợp ngữ theo cách viết riêng biệt tệp ngôn ngữ bậc cao và tệp của hợp ngữ thì với các nhãn dùng chung (ngôn ngữ bậc cao và hợp ngữ đều dùng) hợp ngữ có cần khai báo tường minh PUBLIC để cho phép ngôn ngữ bậc cao dùng các nhãn đó ?
Cần
Tùy tình huống
Tùy tình huống
Khi liên kết ngôn ngữ bậc cao với hợp ngữ theo cách viết riêng biệt tệp ngôn ngữ bậc cao và tệp của hợp ngữ thì với các nhãn dùng chung (ngôn ngữ bậc cao và hợp ngữ đều dùng) ngôn ngữ bậc cao có cần khai báo tường minh PUBLIC để cho phép hợp ngữ dùng các nhãn đó ?
check_box Không cần vì bất kỳ một khai báo nào của n/n bậc cao đều cho phép các module khác dùng
Cần
Tùy tình huống
Khi liên kết ngôn ngữ bậc cao với hợp ngữ theo cách viết riêng biệt tệp ngôn ngữ bậc cao và tệp của hợp ngữ, với giả thiết hàm do hợp ngữ viết có đối thì chương trình con của hợp ngữ thường sử dụng nhất thanh ghi nào làm con trỏ để thâm nhập vào các biến (tham số thực đã được đưa vào ngăn xếp) ?
check_box BP
BX, SI hoặc DI
SP
Khi liên kết ngôn ngữ bậc cao với hợp ngữ theo cách viết riêng biệt tệp ngôn ngữ C/C++ bậc cao và tệp của hợp ngữ thì với các nhãn dùng chung (ngôn ngữ C/C++ và hợp ngữ đều dùng), ngôn ngữ C/C++ có cần khai báo tường minh EXTERNAL (extern) để xin phép dùng các nhãn mà hợp ngữ đã xác lập và cho phép ?
Cần
Không cần
Tùy tình huống
Khi liên kết ngôn ngữ C/C++ với hợp ngữ theo cách viết riêng biệt tệp ngôn ngữ C/C++ và tệp của hợp ngữ thì trong module hợp ngữ có phải thêm dấu gì trước các biến dùng chung với C/C++ ?.
check_box Thêm dấu _ (dấu underscore) trước tên biến và thêm ở mọi nơi mà biến đó xuất hiện trong module hợp ngữ
Không cần thêm gì
Thêm dấu $
Khi liên kết ngôn ngữ C/C++ với hợp ngữ theo cách viết riêng biệt tệp ngôn ngữ C/C++ và tệp của hợp ngữ, với giả thiết chương trình con viết bằng hợp ngữ có đối thì khi C/C++ gọi chương trình con đó các tham số thực sẽ được đưa vào ngăn xếp theo thứ tự như thế nào ?
check_box Từ phải sang trái
Từ trái sang phải
Tùy tình huống
Khi liên kết ngôn ngữ C++ với hợp ngữ theo cách viết riêng biệt tệp ngôn ngữ C++ và tệp của hợp ngữ thì trong module hợp ngữ có phải thêm dấu gì trước tên chương trình con ?
check_box Thêm @ vào trước tên chương trình con
Không cần thêm gì
Thêm dấu _ (dấu underscore) vào trước tên chương trình con
Khi liên kết với ngôn ngữ bậc cao với ngôn ngữ Assembly thì địa chỉ lệnh tiếp theo được cất vào ngăn xếp gồm mấy byte?
2 byte
4 byte
Nếu chương trình con là NEAR thì 2 byte, còn nếu chương trình con là FAR thì 4 byte
Khi viết một chương trình hợp ngữ có thể sử dụng 2 loại directive điều khiển segment là dạng đơn giản (.MODEL, .STACK, .DATA, .CODE) và dạng chuẩn (SEGMENT, GROUP, ASSUME). Loại nào có thể xử lý mọi tình huống về điều khiển segment ?
Cả hai dạng
Dạng chuẩn
Dạng dơn giản
Khi viết một chương trình hợp ngữ sử dụng directive điều khiển segment dạng chuẩn và có khai báo biến thì người lập trình có phải đưa phần địa chỉ segment của dữ liệu vào thanh ghi DS ?
check_box Có và nhờ 2 lệnh sau :mov reg16,datamov DS,reg16
Có và nhờ 2 lệnh sau :mov reg16,@data mov DS,reg16
Không, hệ điều hành sẽ tự đưa
Tùy tình huống
Khi viết một chương trình hợp ngữ sử dụng directive điều khiển segment dạng đơn giản và có khai báo biến thì người lập trình có phải đưa phần địa chỉ segment của dữ liệu vào thanh ghi DS ?
Có và nhờ 2 lệnh sau :mov reg16,datamov DS,reg16
Có và nhờ 2 lệnh sau :mov reg16,@data mov DS,reg16
Không, hệ điều hành sẽ tự đưa
Tùy tình huống
Khối lệnh trong thân MACRO có cho phép có nhãn nhảy hay không ?
Có song nhãn đó phải được khai báo sau directive LOCAL
Có trong bất kỳ tình huống nào
Không
Làm thế nào để xác định địa chỉ đầu của chương trình con phục vụ ngắt ?
Nhờ directive OFFSET
Nhờ directive OFFSET và SEG
Nhờ directive SEG
Làm thế nào xác định được độ dài 1 tệp?
Đưa con trỏ tệp về cuối tệp và CF = 0 (bit cờ Carry = 0) thì DX:AX=độ dài tệp
Đưa con trỏ tệp về cuối tệp và CF = 1 (bit cờ Carry = 1) thì DX:AX=độ dài tệp
Lập trình đa luồng là?
Cho phép chương trình chạy một hàm nhiều lần song song với nhau
Cho phép chương trình chạy nhiều hàm cùng lúc
Cho phép chương trình chạy nhiều hàm cùng lúc hoặc một hàm nhiều lần cùng lúc
Cho phép chương trình chạy nhiều hàm trên cùng một luồng
Cho phép chương trình chạy nhiều luồng luân phiên nhau
Lệnh AND AX,AX có nghĩa gì không?
Giá trị AX không đổi song dựng trạng thái các bit cờ, phục vụ các lệnh nhảy có điều kiện
Tất cả các phương án
Vô nghĩa
Xóa trạng thái các bit cờ
Lệnh khai báo thư viện API sử dụng trong chương trình là?
#include<stdio.h>
#include<string.h>
#include<win.h>
#include<window.h>
#include<windows.h>
Lệnh nhảy JMP là loại lệnh nhảy gì và có bước nhảy bao nhiêu byte?
Có điều kiện và bước nhảy là không giới hạn
Không điều kiện và có bước nhảy 64 k
Lệnh SAR AX,1 (dịch phải một lần nội dung có trong thanh ghi AX) có nghĩa gì?
Chỉ chia đôi làm tròn dưới giá trị có trong AX nếu AX chứa số nguyên dương
Chia đôi giá trị có trong AX nếu AX chứa số nguyên
Chia đôi làm tròn dưới giá trị có trong AX nếu AX chứa số nguyên
Tất cả các phương án
Lệnh SHL AX,1 (dịch trái một lần nội dung có trong thanh ghi AX) có ý nghĩa gì?
Chia đôi giá trị có trong AX
Nhân đôi giá trị có trong AX
Nhân đôi giá trị có trong AX với điều kiện bit cao nhất là 0 (AX chứa số nguyên dương)
Tất cả các phương án
Lệnh SHR AX,1 (dịch phải một lần nội dung có trong thanh ghi AX) có ý nghĩa gì?
Chia đôi giá trị có trong AX nếu AX chứa số nguyên dương
Chia đôi làm tròn dưới giá trị có trong AX nếu AX chứa số nguyên
Chia đôi làm tròn dưới giá trị có trong AX nếu AX chứa số nguyên dương
Tất cả các phương án
Lệnh: LEA BX,m (trong đó m là một biến) có ý nghĩa gì?
check_box Đư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
Đưa giá trị biến m vào thanh ghi BX
Xóa trạng thái các bit cờ
Đưa phần địa chỉ segment ô nhớ cấp phát cho biến m vào thanh ghi BX
Liên kết giữa ngôn ngữ bậc cao và hợp ngữ theo cách Inline Assembly thực hiện như thế nào ?
Chèn khối lệnh hợp ngữ vào chương trình được viết bằng ngôn ngữ bậc cao
Chèn khối lệnh ngôn ngữ bậc cao vào chương trình được viết bằng hợp ngữ
Lớp cửa sổ (WNDCLASS) được đăng ký (RegisterClass) vào hệ thống có tác dụng như thế nào?
Không cần đăng ký lớp cửa sổ
Quy định các đặc điểm cửa sổ và hàm xử lý thông điệp trên nó
Quy định các hoạt động trên cửa sổ
Quy định cấu tạo cửa sổ
Quy định màu sắc, kiểu chữ của cửa sổ
MACRO của hợp ngữ có cho phép có đối hay không? Có phải bắt buộc có đối không?
check_box Có thể có đối hoặc không có đối
Bắt buộc phải có đối
Không có đối
Máy tính cấu trúc 16 bit có bao nhiêu thanh ghi?
check_box Có tất cả 14 thanh ghi không kể thanh ghi xử lý lệnh. Đó là: 1 thanh ghi cờ, 8 thanh ghi đa năng (AX, BX, CX, DX, SI, DI, BP, và SP), 1 thanh ghi con trỏ lệnh IP và 4 thanh ghi segment (CS, DS, ES và SS)
Không có thanh ghi nào
Nhiều thanh ghi
Có 10 thanh ghi
Một chương trình chính của ngôn ngữ Assembly phải kết thúc như thế nào?
check_box Kết thúc phải trở về DOS với:Chương trình dạng .EXE là:mov ah,4chint 21hChương trình dạng .COM là:int 20h
Không phải làm gì cả.
Bình thường như các ngôn ngữ khác.
Một chương trình dạng .COM có bắt buộc sử dụng directive ORG 100h không?
Bắt buộc phải có
Không cần
Tùy tình huống
Một chương trình dạng .COM có thể chứa bao nhiêu phân đoạn (seggment) và đó là phân đoạn nào?
1 phân đoạn duy nhất và đó là code segment
2 phân đoạn và đó là code segment và data segment
phân đoạn và đó là code, data và stack segment
Một chương trình dạng .COM, nếu có khai báo biến thì biến sẽ được cấp phát ô nhớ của vùng nhớ dành cho phân đoạn (seggment) nào?
check_box Phân đoạn vùng nhớ dành cho dữ liêu (data segment)
Phân đoạn vùng nhớ dành cho mã máy của CT (code segment)
Phân đoạn vùng nhớ dành cho ngăn xếp (stack segment)
Một chương trình dạng .EXE có thể chứa ít nhất bao nhiêu phân đoạn (segment) ?
1 phân đoạn
2 phân đoạn
3 phân đoạn
Một số kiểu dữ liệu trên Windows có tiền tố chữ H (HWND, HINSTANCE, HPEN,…). Chữ H có nghĩa là?
Chuỗi ký tự định danh (Handle) các thành phần
Ký tự mô tả thành phần
Số nguyên chứa nội dung của thành phần
Số nguyên định danh (Handle) các thành phần
Số nguyên nắm giữ (Hold) giá trị thành phần
Một thư viện DLL có thể được dùng như thế nào?
Chỉ được sử dụng trong một chương trình
Được sử dụng chung trong toàn bộ hệ thống
Được sử dụng trong nhiều chương trình
Được sử dụng tùy ý
Không được sử dụng trong nhiều chương trình
Một toán hạng đứng sau các lệnh của ngôn ngữ Assembly (hợp ngữ) có thể là gì?
check_box Có thể là một thanh ghi, biến nhớ, hằng số, biểu thức hoặc một nhãn (tên CT con, nhãn nhảy)
Chỉ có thể là một nhãn
Chỉ có thể là một thanh ghi
Chỉ có thể là một hằng số
Chỉ có thể là một biến nhớ
Muốn xác lập một ngắt người lập trình phải tiến hành các bước cần thiết gì ?
Chỉ cần viết chương trình con phục vụ ngắt
Đặt địa chỉ đầu của chương trình con phục vụ ngắt vào vị trí tương ứng của bảng vectơ ngắt
Tất cả các phương án
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 ?
Bàn phím
Màn hình
Ổ đĩa
Ngắt BIOS int 16h là ngắt gồm các chức năng liên quan đến thiết bị nào ?
Bàn phím
Màn hình
Ổ đĩa
Ngắt nào của BIOS cho phép làm việc với thời gian máy tính?
Ngắt 10h
Ngắt 16h
Ngắt 1Ah
Ngắt nào của DOS có các chức năng liên quan đến các thiết bị của máy tính?
Hầu hết đều do ngắt int 21h của DOS nắm giữ
Mỗi một thiết bị có một ngắt DOS riêng
Người lập trình ngôn ngữ Assembly (hợp ngữ) hay dùng lệnh AND với mục đích gì?
check_box Để:Tách bit: Muốn tách bit nào đó (giữ trạng thái bit đó) của 1 toán hạng thì hãy AND bit đó với 1 và các bit khác với 0.Dựng cờ: Thực hiện lệnh AND toán hạng với chính nó sẽ dựng các cờ cho biết trạng thái giá trị của toán hạng đó và trên cơ sở các cờ đó thực hiện các lệnh nhảy có điều kiện.
Để đưa giá trị một toán hạng về 0
Để đưa giá trị của toán hạng lên 1
Xóa trạng thái các bit cờ
Để thay đổi giá trị của toán hạng
Người lập trình ứng dụng của ngôn ngữ Assembly (hợp ngữ) có thể dùng các thanh ghi nào làm con trỏ offset (thanh ghi chứa phần địa chỉ offset) của một ô nhớ?
check_box Chỉ có thể dùng các thanh ghi sau: BX, SI, DI và BP
Các thanh ghi segment
Chỉ dùng thanh ghi DX
Tất cả các thanh ghi
Những thông điệp phát sinh khi người dùng tác động lên thiết bị chuột bao gồm?
check_box WM_MOUSEMOVE, WM_LBUTTONDOWN,WM_RUTTONDOWN
WM_CLOSE, WM_LBUTTONDOWN,WM_RUTTONDOWN
WM_LBUTTONDOWN,WM_KEYDOWNWM_RUTTONDOWN
WM_MOUSE, WM_LEFTDOWN,WM_RIGHTDOWN
WM_MOUSEMOVE, WM_LBUTTONDOWN,WM_CHAR
Những vấn đề gì cần giải quyết khi viết chương trình đa tệp?
check_box Vấn đề nẩy sinh cần giải quyết là làm sao các nhãn (tên biến nhớ, tên chương trình con, tên hằng, tên cấu trúc,…) dùng chung (các tệp cùng dùng) phải hiểu nhau bằng sử dụng các directive PUBLIC, EXTRN hoặc GLOBAL
Chỉ cần khai báo EXTRN (xin phép) với các nhãn dùng chung
Chỉ cần khai báo PUBLIC (cho phép) với các nhãn dùng chung
Viết như chương trình trên một tệp mà không cần giải quyết vấn đề nào thêm cả.
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
check_box 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 20h5. Khi liên kết sử dụng tùy chon t, cụ thể là:tlink/t têntệp
Cần lưu ý khi liên kết
Cần lưu ý khi khai báo biến
Không cần lưu ý gì. Viết như để tệp thực hiện có đuôi .EXE
Ở chế độ văn bản màn hình có bao nhiêu dòng ?
25
40
80
ROM BIOS là gì, chứa thông tin gì ?
check_box Là vùng nhớ dạng ROM chứa một số thông tin về máy tính đang dùng và quan trọng hơn cả là chứa mã máy của hai loại chương trình: mã máy các chương trình kiểm tra khi máy tính khởi động và mã máy của các chương trình con phục vụ ngắt BIOS.
Là vùng nhớ chứa hệ điều hành
Là vùng nhớ ROM chứa thông tin về phần cứng máy tính đang dùng.
Sau khi đọc nội dung trong 1 tệp thành công (chức năng 3Fh của ngắt int 21h) thì thanh ghi nào cho biết số lượng byte thực tế đã đọc được?
Thanh ghi AX
Thanh ghi BX
Thanh ghi CX
Thanh ghi DX
Sau khi thực hiện các chức năng liên quan đến thư mục và tệp thì trạng thái bit cờ nào cho biết kết quả thực hiện của các chức năng trên (được hay không được)?
Bit cờ CF = 1 không thực hiện được và CF=0 thực hiện được
Bit cờ SF = 1 không thực hiện được và SF=0 thực hiện được
Bit cờ ZF = 1 không thực hiện được và ZF=0 thực hiện được
Sau khi thực hiện các chức năng mở 1 tệp đã có (chức năng 3dh) hoặc tạo 1 tệp mới và mở (chức năng 3ch) của ngắt DOS int 21h thì sau khi thực hiện thành công thẻ tệp nằm ở thanh ghi nào?
Thanh ghi AX
Thanh ghi BX
Thanh ghi cờ
Thanh ghi DX
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?
check_box 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
Không có toán hạng nào
Tùy tình huống
Có 2 toán hạng
Sử dụng tệp dịch nào để liên kết ngôn ngữ C/C++ với ngôn ngữ Assembly (hợp ngữ)?
check_box Sử dụng chương trình dịch (lệnh) tcc.exe (các tùy chọn được xác lập trên dòng lệnh dịch)
Sử dụng chương trình dịch của ngôn ngữ Assembly (hợp ngữ)
Sử dụng chương trình dịch tc.exe của chương trình dịch C/C++ (các tùy chọn được xác lập bởi Menu Options của TC)
Sử dụng chương trình dịch nào cũng được
Tài nguyên của một chương trình có tác dụng?
Chứa các dữ liệu cố định và được sử dụng trong chương trình nhanh chóng và thuận tiện
Chứa các dữ liệu cố định và được sử dụng trong hệ điều hành Windows
Chứa các dữ liệu sử dụng trong chương trình và có thể thay đổi
Chứa các hình ảnh và được sử dụng trong chương trình
Chứa các mã lệnh của chương trình để điều khiển máy thực hiện công việc
Tên hàm Assembly khi liên kết với ngôn ngữ C và với ngôn ngữ C++ có khác nhau không?
Có: Khi liên kết với C thì tên hàm Assembly thêm dấu_ (underscore) trước tên hàm, còn với C++ thì thêm dấu @ trước tên hàm và $q… sau tên hàm
Không, cả hai trường hợp đều thêm dấu _ (underscore) trước tên hàm
Tên hàm Assembly khi liên kết với ngôn ngữ C++ với trường hợp hàm có 1 đối là tham biến thì thêm gì sau @tên hàm?
Không thêm gì cả
Thêm $qi (ví dụ: @tênhàm$qi)
Thêm $qpi với đối là con trỏ NEAR (ví dụ: @tênhàm$qpi) hoặc $qni với đối là con trỏ FAR (ví dụ: @tênhàm$qni)
Thêm $qv (ví dụ: @tênhàm$qv)
Tên hàm Assembly khi liên kết với ngôn ngữ C++ với trường hợp hàm có 1 đối là tham trị thì thêm gì sau @tên hàm?
Không thêm gì cả
Thêm $qi (ví dụ: @tênhàm$qi)
Thêm $qni (ví dụ: @tênhàm$qni)
Thêm $qv (ví dụ: @tênhàm$qv)
Tên hàm Assembly khi liên kết với ngôn ngữ C++ với trường hợp hàm không đối thì thêm gì sau tên hàm?
Không thêm gì cả
Thêm $qi (ví dụ: @tênhàm$qi)
Thêm $qni (ví dụ: @tênhàm$qni)
Thêm $qv (ví dụ: @tênhàm$qv)
Tham trị và tham biến khi gọi hàm có đối có gì khác nhau?
check_box Khi tham số thực của hàm là tham trị thì giá sẽ được đưa vào ngăn xếp, còn tham số thực là tham biến thì địa chỉ của tham số thực sẽ được đưa vào ngăn xếp
Giá trị của tham số thực dạng là tham trị và tham biến sẽ đưa vào ngăn xếp
Không có gì khác nhau
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?

Không
Tùy tình huống
Thông điệp được phát sinh và đưa vào chương trình khi nào?
Hệ thống tự phát sinh tùy ý
Hệ thống tự phát sinh vào những thời điểm cần thiết
Người dùng tác động lên giao diện chương trình
Người dùng tương tác trên giao diện hoặc hệ thống tự phát sinh khi cần
Thông điệp không bao giờ được gửi đến chương trình
Thông điệp được xử lý như thế nào trong chương trình?
Không cần xử lý thông điệp
Thông điệp được xử lý bên trong hàm chính (WinMain)
Thông điệp được xử lý bên trong một hàm lập trình theo mẫu quy định
Thông điệp được xử lý bên trong vòng lặp thông điệp
Thông điệp sẽ do máy tự động xử lý
Thông điệp WM_PAINT được xử lý nhằm mục đích gì?
check_box Vẽ đồ họa trên cửa sổ mỗi khi cần cập nhật nội dung trên cửa sổ
Vẽ đồ họa trên cửa sổ khi nhấn chuột
Vẽ đồ họa trên cửa sổ mỗi khi gõ phím
Vẽ đồ họa trên cửa sổ mỗi khi máy xóa dữ liệu trên cửa sổ
Vẽ đồ họa trên cửa sổ tại thời điểm tùy ý
Thứ tự các lệnh để vẽ hình tròn màu xanh và bên trong màu đỏ (với HDC là )?
Ellipse(,0,0,100,100);
HPEN p=CreatePen(PS_SOLID,2,RGB(255,0,0));HBRUSH b=CreateSolidBrush(RGB(0,0,255));SelectObject(,b);Ellipse(,0,0,100,100);
HPEN p=CreatePen(PS_SOLID,2,RGB(255,0,0));HBRUSH b=CreateSolidBrush(RGB(0,0,255));SelectObject(,p);Ellipse(,0,0,100,100);
HPEN p=CreatePen(PS_SOLID,2,RGB(255,0,0));HBRUSH b=CreateSolidBrush(RGB(0,0,255));SelectObject(,p);SelectObject(,b);Ellipse(,0,0,100,100);
HPEN p=CreatePen(PS_SOLID,2,RGB(255,0,0));HBRUSH b=CreateSolidBrush(RGB(0,0,255));SelectObject(,p,b);Ellipse(,0,0,100,100);
Thường có mấy cách để liên kết ngôn ngữ bậc cao với hợp ngữ ?
1
2
3
Thường có mấy dạng biểu diễn địa chỉ một ô nhớ ?
1 dạng duy nhất là lôgic
1 dạng duy nhất là vật lý
2 dạng: dạng lôgic và dạng vật lý
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ímGọi chương tình con tính an do module hợp ngữ viếtHiện kết quảModule Assembly thực hiện nhiệm vụ sau : viết chương trình con tính anVới giả thiết hàm con tính an do Assembly viết không đối thì chúng ta phải khai báo các biến a, n ở đâu?
check_box Biến toàn cục (biến ngoài)
Biến cục bộ
Khai báo ở đâu cũng được
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ímGọi chương tình con tính an do module hợp ngữ viếtHiện kết quảModule Assembly thực hiện nhiệm vụ sau : viết chương trình con tính anVới giả thiết hàm do Assembly viết có 2 đối (a, n sẽ là tham số thực của hàm) thì trong module Assembly (viết hàm) có phải xin phép được dùng giá trị các biến a và n (sử dụng directive EXTRN) hay không?
check_box Không, hàm viết bằng Assembly phải vào ngăn xếp lấy giá trị a và n
Bắt buộc phải có
Có thể và không bắt buộc
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ímGọi chương tình con tính an do module hợp ngữ viếtHiện kết quảModule Assembly thực hiện nhiệm vụ sau: viết chương trình con tính anVớ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?
check_box Khai báo cục bộ trong main()
Khai báo biến toàn cục (biến ngoài)
Khai báo ở đâu cũng được
Toán hạng 2 byte có thể chứa một số nguyên có giá trị bao nhiêu?
Từ -32768 đến 32767
Từ số 0 đến số 65535
Từ số -32767 đến số 32768
Từ số -32768 đến số 0
Từ số -32768 đến số 32768
Trình tự các bước để lập trình đồ họa trên Windows là?
B1) Lấy cửa sổ cần vẽB2) Đặt các tham số để vẽB3) Thực hiện lệnh vẽ
B1) Lấy cửa sổ cần vẽB2) Tạo các đối tượng vẽB3) Thực hiện lệnh vẽB4) Giải phóng cửa sổ đã lấy
B1) Lấy ngữ cảnh thiết bị (thiết bị ảo)B2) Đặt các tham số để vẽB3) Thực hiện lệnh vẽB4) Giải phóng ngữ cảnh thiết bị
B1) Lấy ngữ cảnh thiết bị (thiết bị ảo)B2) Tạo các đối tượng vẽB3) Thực hiện lệnh vẽB4) Giải phóng ngữ cảnh thiết bị
B1) Lấy ngữ cảnh thiết bị (thiết bị ảo)B2) Thực hiện lệnh vẽB3) Đặt các tham số để vẽB4) Giải phóng ngữ cảnh thiết bị
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ì?
Bằng \0
Bằng dấu ‘$’
Bằng Enter (0dh)
Bằng ký tự ‘0’
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ì đôi thanh ghi nào dùng để chứa địa chỉ đầu xâu ký tự chứa tên thư mục hoặc tệp?
CS:IP
DS:DX
ES:SI
Trong các lệnh MUL/IMUL (16bit với 16 bit) thì một số hạng nhân có bắt buộc nằm trong AX hay không ?

Không
Tùy tình huống
Trong chương trình đa tệp khi có 1 tệp sai khi dịch thì trước khi liên kết phải dịch lại như thế nào ?
check_box Chỉ cần dịch lại tệp có sai khi dịch
Dịch lại tất cả các tệp
Trong chương trình hợp ngữ có một khối lệnh giống nhau lặp lại nhiều lần. Có mấy cách giúp người lập trình hợp ngữ viết gọn chương trình (đỡ viết đi viết lại khối lệnh đó)?
check_box Có thể thể hiện bằng 3 cách trên
Thể hiện khối lệnh đó bằng một MACRO
Thể hiện khối lệnh đó bằng một chương trình con
Khối lệnh đó được thể hiện trong một tệp ngoài, sau đó dùng direcive INCLUDE để chèn khối lệnh đó vào chương trình đang viết
Trong hai cách trở về DOS từ một chương trình hợp ngữ sau:Cách 1: MOV AH,4CH INT 21HCách 2: INT 20Hthì chương trình dạng .COM có thể sử dụng cách nào?
Cả hai cách
Cách 1
Cách 2
Trong hợp ngữ một công việc được thể hiện bằng một chương trình con có thể thay bằng 1 macro hoặc ngược lại được không?
Được
Không
Tùy tình huống
Vai trò của directive GLOBAL của chương trình dich Turbo Assembler của hãng Borland?
check_box 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
Chỉ thay cho directive EXTRN
Chỉ thay cho directive PUBLIC
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 .EXE hoặc đuôi .COM thì tệp thực hiện nào tiết kiệm vùng nhớ hơn?
check_box Viết chương trình với dạng sao cho được tệp thực hiện .COM sẽ tiết kiệm vùng nhớ hơn
Như nhau
Tệp có đuôi .EXE sẽ tiết kiệm vùng nhớ hơn
Với 2 cách để liên kết ngôn ngữ Assembly (hợp ngữ) với ngôn ngữ bậc cao là Inline Assembly và viết tách biệt tệp hợp ngữ và tệp ngôn ngữ bậc cao thì cách nào tốt hơn và hay dùng hơn?
check_box Cách viết tách biệt 2 tệp của 2 loại ngôn ngữ tốt hơn và hay dùng hơn vì tận dụng được sức mạnh của 2 chương trình dịch và sức mạnh các lệnh của 2 loại ngôn ngữ.
Cách Inline tốt hơn và hay dùng hơn
Cách nào cũng như nhau.
Với các thiết bị ngoại vi thì ngắt BIOS và DOS được tổ chức thế nào?
check_box Ngắt BIOS xác lập từng ngắt cho từng thiết bị ngoại vi. Song với ngắt DOS, việc điều khiển các thiết bị ngoại vi đều hầu hết thông qua các chức năng của ngắt int 21h (DOS functions)
Chỉ có ngắt của BIOS mới có các chức năng điều khiển các thiết bị ngoại vi.
Chỉ có ngắt của DOS mới có các chức năng điều khiển các thiết bị ngoại vi.
Với chức năng đọc tệp (chức năng 3Fh của ngắt INT 21h) thì khi nào biết đã hết tệp?
CF = 0 (bit cờ Carry = 0)
CF = 0 và số lượng byte cần đọc nằm ở DX:AX=0
CF = 1 (bit cờ Carry = 1)
ZF = 0 (bit cờ Zero = 0)
ZF = 1 (bit cờ Zero = 1)
Với chức năng ghi tệp (chức năng 40h của ngắt INT 21h) thì khi CX=0 (số lượng byte cần ghi vào tệp là 0) có nghĩa gì?
Cắt bỏ phần nội dung của tệp từ nơi con trỏ tệp trở về cuối tệp
Không ghi gì vào tệp
Nội dung của tệp vẫn giữ nguyên
Với chức năng ghi tệp (chức năng 40h của ngắt INT 21h) thì với thẻ tệp (file handle) bằng 1 có nghĩa gì?
Đọc nội dung màn hình đưa vào tệp
Đưa số liệu lên màn hình (hiện lên màn hình)
Đưa số liệu ra máy in
Với chương trình hợp ngữ được viết theo khai báo directive điều khiển segment dạng chuẩn thì khi viết chương trình con không khai báo tường minh NEAR/FAR thì mặc định sẽ là gì?
FAR
NEAR
Tùy tình huống
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 ?
.MODEL large/medium/ huge
.MODEL tiny/small/compact
Loại nào cũng được
Với chương trình thuần túy hợp ngữ (chương trình chính và chương trình con đều là hợp ngữ) thì chương trình con có đối không?
check_box Không có
Tùy tình huống
Với chương trình thuần túy hợp ngữ (chương trình chính và chương trình con đều là hợp ngữ) thì việc chuyển giao tham số giữa chương trình chính và chương trình con thường có thể tiến hành như thế nào ?
Chỉ thông qua biến nhớ
Chỉ thông qua thamh ghi
Thông qua ngăn xếp
Thông qua thamh ghi, biến nhớ
Với máy tính có CPU của hãng Intel hoặc tương thích thì khi khởi động máy tính các thanh ghi CS và IP trỏ đến địa chỉ nào ?
CS=0 và IP=0
CS=0 và IP=FFFFh
CS=F000h và IP=FFF0h
CS=FFF0h và IP=F000h
Vòng lặp thông điệp có tác dụng như thế nào?
Biến đổi thông điệp từ dạng thô về dạng tinh
Loại bỏ các thông điệp không cần thiết
Phát sinh thông điệp và gửi đến hệ thống Windows
Tiếp nhận các sự kiện diễn ra trên máy
Tiếp nhận các thông điệp được phát sinh và gửi đến chương trình
Vòng lặp thông điệp được lập trình như sau?
MSG m;while(1){GetMessage(&m,0,0,0);TranslateMessage(&m);DispatchMessage(&m);}
MSG m;while(GetMessage(&m){TranslateMessage(&m);DispatchMessage(&m);}
MSG m;while(GetMessage(&m,0,0,0){DispatchMessage(&m);TranslateMessage(&m);}
MSG m;while(GetMessage(&m,0,0,0){TranslateMessage(&m);DispatchMessage(&m);}
MSG m;while(GetMessage(m,0,0,0){TranslateMessage(m);DispatchMessage(m);}
Vòng lặp trong ngôn ngữ Assembly (hợp ngữ) thường dùng là lệnh gì? Chỉ số vòng lặp nằm ở đâu?
check_box Vòng lặp của ngôn ngữ Assembly thường dùng là lệnh LOOP. Chỉ số vòng lặp bắt buộc phải là một số nguyên dương và phải nằm trong thanh ghi CX trước khi thực hiện vòng lặp.
Vòng lặp ngôn ngữ Assembly thường dùng là lệnh LOOP. Chỉ số vòng lặp nằm ở thanh ghi AX
Vòng lặp ngôn ngữ Assembly thường dùng là lệnh LOOP. Chỉ số vòng lặp nằm ở bất kỳ thanh ghi nào
Vùng dữ liệu ROM BIOS là gì?
Là vùng nhớ chứa các thông tin về máy tính đang dùng
Là vùng nhớ chứa mã máy các chương trình con phục vụ ngắt của BIOS
Là vùng nhớ chứa mã máy của các chương trình kiểm tra khi máy tính khởi động
Vùng nhớ ngăn xếp có vai trò gì liên quan đến hàm?
check_box Vùng nhớ ngăn xếp có vai trò rất quan trọng. Có thể nói không có ngăn xếp thì không có hàm. Hàm cần ngăn xếp để:Sử dụng cho lệnh push và pop trong thân hàm hợp ngữ,Khi gọi hàm, tham số thực sẽ đưa vào ngăn xếp.Chứa địa chỉ lệnh tiếp theo (địa chỉ lệnh đứng ngay sau lệnh gọi hàm).
Không có vai trò gì.
Chỉ để sử dụng cho lệnh push và pop của ngôn ngữ Assembly.
Chỉ sử dụng để chứa giá trị của tham số thực

Nếu bạn thấy tài liệu này có ích và muốn tặng chúng tớ 1 ly café
Hãy mở Momo hoặc ViettelPay và quét QRCode. Đây là sự động viên khích lệ rất lớn với chúng tớ và là nguồn lực không nhỏ để duy trì website

Momo
ViettelPay

Không tìm thấy đáp án? Cần hỗ trợ hoàn thành môn học EHOU? Cần tư vấn về học trực tuyến hay bạn chỉ muốn góp ý?
zalo.me/Thế Phong, SĐT 08 3533 8593

Cần hỗ trợ nhanh?
Truy cập Zalo hỗ trợ học tập tại ĐÂY.  Hoặc quét QRCode Zalo

Zalo hỗ trợ học tập

Cần hỗ trợ nhanh?
Truy cập Zalo hỗ trợ học tập tại ĐÂY.  Hoặc quét QRCode Zalo

Zalo hỗ trợ học tập