ASEMBLE(Tổng số : 225 câu)NhomA = 100.
HA(7) = " Khi máy tính đang thi hành một lệnh nào đó thì con trỏ lệnh IP chỉ vào lệnh nào ?"
TA(7, 1) = "Chỉ vào lệnh đang thi hành"
TA(7, 2) = "Chỉ vào lệnh ngay trước lệnh đang thi hành"
TA(7, 3) = "Chỉ vào lệnh bất kỳ "
Trang 2TA(7, 4) = "Chỉ vào lệnh ngay sau lệnh đang thi hành"
HA(10) = " Hãy cho biết các dòng lệnh sau dòng nào sai ?"
TA(10, 1) = "ACF EQU 10"
TA(10, 2) = " MOV ACF,123"
TA(10, 3) = " MOV AH, K"
TA(10, 4) = " MOV AH,AL"
TA(12, 1) = " MOV AX, VAL1"
TA(12, 2) = " MOV VAL1, AX"
TA(12, 3) = " MOV VAL1,20"
TA(12, 4) = " MOV VAL1, AX "
Trang 3TA(15, 1) = "Sai câu 1"
TA(15, 2) = " Sai câu 1 và 5"
TA(15, 3) = " Sai câu 1,2,5"
TA(15, 4) = " Sai câu 2,3,4"
m6 = "Nếu ta nhấn vào phím số 1 trên keyboard, mã nhận được sẽ chứa ở đâu:"
TA(17, 1) = "Thanh ghi DX"
TA(17, 2) = "Thanh ghi DL"
TA(17, 3) = "Thanh ghi AL "
TA(17, 4) = "Thanh ghi BL"
TA(17, 5) = "Thanh ghi CL"
Trang 4m6 = "Nếu ta nhấn vào phím số 1 trên keyboard, Thanh ghi AL chứa giá trị bằng bao nhiêu ?"
TA(19, 2) = "Hiển thị chuỗi ký tự chứa trong DX"
TA(19, 3) = "Thoát khỏi chương trình về hệ điều hành"
TA(19, 4) = "Kết thúc chương trình ở lại nội trú"
TA(19, 5) = "Hiển thị một ký tự có mã ASCII chứa trong thanh ghi DL"
DA(19) = 5
HA(20) = " Số hàm 09 của ngắt 21h thực hiện chức năng gì ?"
TA(20, 1) = "Nhập ký tự vào từ bàn phím và hiển thị lên màn hình"
TA(20, 2) = "Nhập ký tự vào từ bàn phím không hiển thị lên màn hình"
TA(20, 3) = "Hiển thị một ký tự chứa trong DL"
TA(20, 4) = "Hiển thị chuỗi ký tự có địa chỉ offset đặt trong thanh ghi DX "
TA(21, 2) = "Hiển thị chuỗi ký tự ""AB"""
TA(21, 3) = "Hiển thị dòng chữ 'Hello world"
TA(21, 4) = "Không hiển thị gì"
DA(21) = 2
Rem câu 22
m1 = " Hàm 1 ngắt 21h dùng để nhập một ký tự từ bàn phím, và kết quả nhận được đặt trong thanh ghi
AL, hãy cho biết đoạn lệnh sau, sau khi thực hiện AL sẽ có giá trị bao nhiêu khi ấn phím số 1 trên bàn phím ?"
Trang 5Rem câu 23
m1 = " Hàm 1 ngắt 21h dùng để nhập một ký tự từ bàn phím, và kết quả nhận được đặt trong thanh ghi
AL, Hãy cho biết đoạn lệnh sau sau khi thực hiện AL sẽ có giá trị bao nhiêu khi ấn phím số 1 trên bàn phím ?"
HA(24) = " Lệnh TASM của Turbo Assembler dùng để làm gì ?"
TA(24, 1) = "Dịch chương trình dạng *.ASM sang file thi hành *.EXE"
TA(24, 2) = "Liên kết các file *.OBJ"
TA(24, 3) = "Trình gỡ rối chương trình"
TA(24, 4) = "Soạn thảo chương trình"
TA(24, 5) = "Dịch chương trình dạng ASM sang dạng mã máy OBJ "
DA(24) = 5
HA(25) = " Lệnh TLINK của Assembler dùng làm gì ?"
TA(25, 1) = " Dịch chương trình dạng *.ASM sang file thi hành *.EXE"
TA(25, 2) = "Thực hiện liên kết để tạo file thi hành *.EXE hoặc COM "
TA(25, 3) = "Trình gỡ rối chương trình"
TA(25, 4) = "Soạn thảo chương trình"
TA(25, 5) = "Dịch chương trình dạng *.ASM sang dạng mã máy *.OBJ"
DA(25) = 2
HA(26) = " Lệnh sau của Assembler dùng làm gì ?" & vbCrLf & _
"c:\TASM\BIN>TLINK/t hello"
TA(26, 1) = " Dịch chương trình dạng hello.ASM sang file thi hành *.EXE"
TA(26, 2) = "Liên kết file hello.OBJ để tạo file thi hành *.EXE "
TA(26, 3) = "Liên kết tạo file thi hành hello.com "
TA(26, 4) = "Trình gỡ rối chương trình"
TA(26, 5) = "Dịch chương trình dạng *.ASM sang dạng mã máy *.OBJ"
DA(26) = 3
HA(27) = " Trình TD.EXE của Turbo Assembler dùng để làm gì ?"
TA(27, 1) = "Dịch chương trình dạng *.ASM sang file thi hành *.EXE"
TA(27, 2) = "Liên kết các file *.OBJ"
TA(27, 3) = "Trình gỡ rối tập tin khả thi "
TA(27, 4) = "Soạn thảo chương trình"
TA(27, 5) = "Dịch chương trình dạng *.ASM sang dạng mã máy *.OBJ"
DA(27) = 3
HA(28) = " Ta đã biết hàm 02h của ngắt 21h dùng để hiển thị một ký tự ra màn hình, hãy cho biết mã ký
tự đó phải đặt trong thanh ghi nào ?"
TA(28, 1) = "AX"
TA(28, 2) = "DX"
TA(28, 3) = "DL "
Trang 6TA(31, 1) = "Hàm 02, mã ký tự muốn hiển thị đặt trong thanh ghi BL"
TA(31, 2) = "Hàm 09, mã ký tự đặt trong thanh gi AL"
TA(31, 3) = "Hàm 02, mã ký tự đặt trong thanh ghi DL"
TA(31, 4) = "Hàm O8, mã ký tự đặt trong thanh ghi AL"
TA(31, 5) = "Hàm 09 và mã ký tự đặt trong thanh ghi DX"
Trang 7TA(33, 1) = " Hiện lên màn hình một chuỗi ký tự bất kỳ"
TA(33, 2) = " Hiện lên ký tự '*'"
TA(33, 3) = "Hiện lên chuỗi gồm 80 ký tự dấu '*'"
TA(33, 4) = "Hiện lên giá trị 80"
TA(33, 5) = "Hiện lên giá trị 200h"
m15 = "Add AX, Counter"
m16 = "MOV Sum, AX"
Trang 8DA(35) = 1
Rem câu 36
HA(36) = " Câu lệnh nào trong các câu lệnh sau là đúng"
"Trong đó var1 và var2 là các biến kiểu DW"
TA(36, 1) = " MOV var1,var1 "
TA(36, 2) = " ADD 30h,AX"
TA(36, 3) = " SUB Var1,AX"
TA(36, 4) = " MUL AX,BX"
TA(39, 3) = "Cặp thanh ghi DX:BX "
TA(39, 4) = "Cặp thanh ghi DS:AX "
TA(39, 5) = "Cặp thanh ghi DX:AX "
DA(39) = 5
Rem câu 40
HA(40) = " Đoạn lệnh sau sai ở câu lệnh nào ?"
Trang 9TA(40, 1) = " MOV AX, 3"
HA(41) = " Lệnh DIV với toán hạng là byte thì thương số và phần dư sẽ được lưu trữ ở đâu ?"
TA(41, 1) = "Thương trong AX, phần dư đặt trong BX"
TA(41, 2) = "Thương đặt trong AL và phần dư trong thanh ghi AH "
TA(41, 3) = "Thương đặt trong thanh ghi AX, phần dư trong thanh ghi DX"
TA(41, 4) = "Cả thương số và phần dư đặt trong stack"
HA(43) = " Lệnh DIV với toán hạng là dạng word thì kết quả phép chia và phần dư đặt ở đâu ?"
TA(43, 1) = "Cặp thanh ghi AL, AH"
TA(43, 2) = "Cặp thanh ghi AX, BX"
TA(43, 3) = "Cặp thanh ghi CX,BX"
TA(43, 4) = "Cặp thanh ghi DS, AX"
TA(43, 5) = "Cặp thanh ghi AX, DX "
HA(45) = " Đoạn lệnh sau sai ở đâu ?"
TA(45, 1) = " MOV AX,100"
TA(45, 2) = " MOV BX,-10"
TA(45, 3) = " DIV BX "
TA(45, 4) = " IDIV BX"
DA(45) = 3
Trang 12m1 = " Đoạn lệnh sau cho kết quả bằng bao nhiêu trong thanh ghi ALvới CF =1 ? "
Trang 13TA(60, 1) = "Trừ giữa 2 toán hạng với nhau"
TA(60, 2) = "Xoá thanh ghi CX "
TA(60, 3) = "Thực hiện phép toán ""hoặc"" giữa 2 thanh ghi"
TA(61, 1) = " Cấu trúc CASE"
TA(61, 2) = "Cấu trúc WHILE- DO"
TA(61, 3) = "Cấu trúc IF- THEN "
TA(61, 4) = "Cấu trúc lặp REPEAT-UNTIL"
TA(62, 1) = " Cấu trúc IF-THEN "
TA(62, 2) = " Cấu trúc vòng lặp FOR"
TA(62, 3) = "Cấu trúc rẽ nhánh CASE "
TA(62, 4) = "Cấu trúc WHILE-DO"
Trang 14m9 = "Hỏi các lệnh nào sau đây không hợp lệ ?"
TA(66, 1) = " MOV AX,B "
TA(66, 2) = " MOV AH,B"
TA(66, 3) = " MOV CX,C"
TA(66, 4) = " MOV BX,WORD PTR B"
Trang 15TA(66, 5) = " MOV DL, WORD PTR C"
Trang 16TA(73, 1) = "Cấu trúc rẽ nhánh IF-THEN"
TA(73, 2) = "Cấu trúc rẽ nhánh CASE"
TA(73, 3) = "Cấu trúc lặp REPEAT- UNTIL"
TA(73, 4) = "Cấu trúc DO-WHILE "
TA(73, 5) = "Cấu trúc lặp FOR"
HA(74) = m1 & vbCrLf & m2 & vbCrLf & m3 & vbCrLf & m4 & vbCrLf & m5 & vbCrLf & m6
TA(74, 1) = "Cấu trúc rẽ nhánh IF-THEN"
TA(74, 2) = "Cấu trúc rẽ nhánh CASE"
TA(74, 3) = "Cấu trúc lặp REPEAT- UNTIL "
TA(74, 4) = "Cấu trúc DO-WHILE "
TA(74, 5) = "Cấu trúc lặp FOR"
Trang 17m3 = "Hãy cho biết lệnh trên đã sử dụng chế độ địa chỉ nào ?"
HA(77) = m1 & vbCrLf & m2 & vbCrLf & m3
TA(77, 1) = "Chế độ địa chỉ thanh ghi"
TA(77, 2) = "Chế độ địa chỉ tức thì"
TA(77, 3) = "Chế độ địa chỉ trực tiếp "
TA(77, 4) = "Chế độ địa chỉ gián tiếp qua thanh ghi"
TA(77, 5) = "Chế độ địa chỉ tương đối cơ sở"
Trang 18m2 = "MOV AL, [BX]"
m3 = "MOV [SI], CL"
m4 = "MOV [DI], AX"
HA(79) = m1 & vbCrLf & m2 & vbCrLf & m3 & vbCrLf & m4
TA(79, 1) = " Chế độ địa chỉ thanh ghi"
TA(79, 2) = "Chế độ địa chỉ tức thì "
TA(79, 3) = "Chế độ địa chỉ trực tiếp "
TA(79, 4) = "Chế độ địa chỉ gián tiếp qua thanh ghi "
TA(79, 5) = "Chế độ địa chỉ tương đối cơ sở"
DA(79) = 4
SA(79) = 5
DiemA(79) = 0.3
Rem câu 80
HA(80) = " Hãy cho biết lệnh sau sử dụng chế độ địa chỉ nào ?" & vbCrLf & _
"MOV AX, [BX+SI+8]"
TA(80, 1) = "Chế độ địa chỉ tương đối chỉ số cơ sở "
TA(80, 2) = "Chế độ địa chỉ tương đối chỉ số"
TA(80, 3) = "Chế độ địa chỉ tương đối cơ sở"
TA(80, 4) = "Chế độ địa chỉ gán tiếp qua thanh ghi."
DA(80) = 1
SA(80) = 4
DiemA(80) = 0.3
Rem câu 81
HA(81) = " Hãy cho biết các dòng lệnh đúng trong đoạn lệnh sau"
TA(81, 1) = "1) Model SMALL "
TA(82, 1) = "Giá trị của các cặp ES, DS và CS, SS bằng nhau"
TA(82, 2) = "Các thanh ghi đoạn có giá trị khác nhau"
TA(82, 3) = "Các thanh ghi đoạn có cùng giá trị "
TA(82, 4) = "Giá trị của các thanh ghi không xác định"
DA(82) = 3
SA(82) = 4
DiemA(82) = 0.3
Rem câu 83
HA(83) = " Hãy cho biết cấu trúc stack được tổ chức theo mô hình nào ?"
TA(83, 1) = "FIFO (First -In-First -Out)"
TA(83, 2) = "LIFO (Last-In- First- Out) "
TA(83, 3) = "Phụ thuộc mô hình bộ nhớ của chương trình ứng dụng"
DA(83) = 2
SA(83) = 3
DiemA(83) = 0.3
Rem câu 84
Trang 19HA(84) = " Hãy cho biết địa chỉ của đỉnh ngăn xếp so với địa chỉ của đáy ngăn xếp như thế nào ?"
TA(84, 1) = "Địa chỉ đỉnh nằm ở địa chỉ cao hơn so với địa chỉ đáy"
TA(84, 2) = "Địa chỉ đỉnh nằm ở địa chỉ thấp so với địa chỉ đáy "
TA(84, 3) = "Địa chỉ đỉnh và đáy luôn bằng nhau"
TA(86, 1) = "Không xẩy ra"
TA(86, 2) = "Có xẩy ra, chương trình gọi chuyển điều khiển cho chương trình được gọi, chương trình được gọi sau khi thực hiện xong không trả quyền điều khiển về cho chương trình gọi nó."
TA(86, 3) = "Có xẩy ra, Chương trình gọi chuyển quyền điều khiển cho chương trình được gọi, chương trình được gọi thi hành xong trả điều khiển điều khiển về cho chương trình gọi nó "
TA(88, 1) = "Chương trình sử dụng MACRO chạy nhanh hơn và tiết kiệm bộ nhớ hơn"
TA(88, 2) = "Chương trình sử dụng MACRO chạy nhanh hơn và tốn bộ nhớ hơn "
TA(88, 3) = "Chương trình sử dụng thủ tục chương trình con chạy nhanh hơn và tiết kiệm bộ nhớ hơn"TA(88, 4) = "Chương trình sử dụng thủ tục chương trình con chạy nhanh hơn và tốn bộ nhớ hơn."
DA(88) = 2
SA(88) = 4
DiemA(88) = 0.3
Rem câu 89
HA(89) = " Hãy cho biết dòng lệnh nào trong khai báo thủ tục sau lỗi."
TA(89, 1) = " test PROC "
TA(89, 2) = " MOV AX,BX"
TA(89, 3) = " ADD AX,BX"
TA(89, 4) = " IRET "
Trang 20TA(89, 5) = " test ENDP "
HA(91) = " Khi máy tính đang thi hành một lệnh nào đó thì con trỏ lệnh IP chỉ vào lệnh nào ?"
TA(91, 1) = "Chỉ vào lệnh đang thi hành"
TA(91, 2) = "Chỉ vào lệnh ngay trước lệnh đang thi hành"
Trang 21DiemA(9) = 0.3
Rem câu 94
HA(94) = " Hãy cho biết các dòng lệnh sau dòng nào sai ?"
TA(94, 1) = "ACF EQU 10"
TA(94, 2) = " MOV ACF,123"
TA(94, 3) = " MOV AH, K"
TA(94, 4) = " MOV AH,AL"
TA(96, 1) = " MOV AX, VAL1"
TA(96, 2) = " MOV VAL1, AX"
TA(96, 3) = " MOV VAL1,20"
TA(96, 4) = " MOV VAL1, AX "
Trang 22m8 = " Lựa chọn câu trả lời:"
HA(99) = m1 & vbCrLf & m2 & vbCrLf & m3 & vbCrLf & m4 & vbCrLf & m5 & vbCrLf & m6 & vbCrLf & m7 & vbCrLf & m8
TA(99, 1) = "Sai câu 1"
TA(99, 2) = " Sai câu 1 và 5"
TA(99, 3) = " Sai câu 1,2,5"
TA(99, 4) = " Sai câu 2,3,4"
Trang 23HB(7) = " Khi máy tính đang thi hành một lệnh nào đó thì con trỏ lệnh IP chỉ vào lệnh nào ?"
TB(7, 1) = "Chỉ vào lệnh đang thi hành"
TB(7, 2) = "Chỉ vào lệnh ngay trước lệnh đang thi hành"
Trang 24TB(12, 1) = " MOV AX, VAL1"
TB(12, 2) = " MOV VAL1, AX"
TB(12, 3) = " MOV VAL1,20"
TB(12, 4) = " MOV VAL1, AX "
Trang 25m8 = " Lựa chọn câu trả lời:"
HB(15) = m1 & vbCrLf & m2 & vbCrLf & m3 & vbCrLf & m4 & vbCrLf & m5 & vbCrLf & m6 & vbCrLf & m7 & vbCrLf & m8
Trang 26m6 = "Nếu ta nhấn vào phím số 1 trên keyboard, mã nhận được sẽ chứa ở đâu:"
HB(17) = m1 & vbCrLf & m2 & vbCrLf & m3 & vbCrLf & m4 & vbCrLf & m5 & vbCrLf & m6
m6 = "Nếu ta nhấn vào phím số 1 trên keyboard, Thanh ghi AL chứa giá trị bằng bao nhiêu ?"
HB(18) = m1 & vbCrLf & m2 & vbCrLf & m3 & vbCrLf & m4 & vbCrLf & m5 & vbCrLf & m6
TB(19, 2) = "Hiển thị chuỗi ký tự chứa trong DX"
TB(19, 3) = "Thoát khỏi chương trình về hệ điều hành"
TB(19, 4) = "Kết thúc chương trình ở lại nội trú"
TB(19, 5) = "Hiển thị một ký tự có mã ASCII chứa trong thanh ghi DL"
DB(19) = 5
SB(19) = 5
DiemB(19) = 0.3
Trang 27Rem câu 20
HB(20) = " Số hàm 09 của ngắt 21h thực hiện chức năng gì ?"
TB(20, 1) = "Nhập ký tự vào từ bàn phím và hiển thị lên màn hình"
TB(20, 2) = "Nhập ký tự vào từ bàn phím không hiển thị lên màn hình"
TB(20, 3) = "Hiển thị một ký tự chứa trong DL"
TB(20, 4) = "Hiển thị chuỗi ký tự có địa chỉ offset đặt trong thanh ghi DX "
TB(21, 2) = "Hiển thị chuỗi ký tự ""AB"""
TB(21, 3) = "Hiển thị dòng chữ 'Hello world"
m1 = " Hàm 1 ngắt 21h dùng để nhập một ký tự từ bàn phím, và kết quả nhận được đặt trong thanh ghi
AL, hãy cho biết đoạn lệnh sau, sau khi thực hiện AL sẽ có giá trị bao nhiêu khi ấn phím số 1 trên bàn phím ?"
m1 = " Hàm 1 ngắt 21h dùng để nhập một ký tự từ bàn phím, và kết quả nhận được đặt trong thanh ghi
AL, Hãy cho biết đoạn lệnh sau sau khi thực hiện AL sẽ có giá trị bao nhiêu khi ấn phím số 1 trên bàn phím ?"
m2 = " "
m3 = "MOV AH, 1"
Trang 28HB(24) = " Lệnh TASM của Turbo Assembler dùng để làm gì ?"
TB(24, 1) = "Dịch chương trình dạng *.ASM sang file thi hành *.EXE"
TB(24, 2) = "Liên kết các file *.OBJ"
TB(24, 3) = "Trình gỡ rối chương trình"
TB(24, 4) = "Soạn thảo chương trình"
TB(24, 5) = "Dịch chương trình dạng ASM sang dạng mã máy OBJ "
DB(24) = 5
SB(24) = 5
DiemB(24) = 0.3
Rem câu 25
HB(25) = " Lệnh TLINK của Assembler dùng làm gì ?"
TB(25, 1) = " Dịch chương trình dạng *.ASM sang file thi hành *.EXE"
TB(25, 2) = "Thực hiện liên kết để tạo file thi hành *.EXE hoặc COM "
TB(25, 3) = "Trình gỡ rối chương trình"
TB(25, 4) = "Soạn thảo chương trình"
TB(25, 5) = "Dịch chương trình dạng *.ASM sang dạng mã máy *.OBJ"
TB(26, 1) = " Dịch chương trình dạng hello.ASM sang file thi hành *.EXE"
TB(26, 2) = "Liên kết file hello.OBJ để tạo file thi hành *.EXE "
TB(26, 3) = "Liên kết tạo file thi hành hello.com "
HB(27) = " Trình TD.EXE của Turbo Assembler dùng để làm gì ?"
TB(27, 1) = "Dịch chương trình dạng *.ASM sang file thi hành *.EXE"
TB(27, 2) = "Liên kết các file *.OBJ"
TB(27, 3) = "Trình gỡ rối tập tin khả thi "
TB(27, 4) = "Soạn thảo chương trình"
TB(27, 5) = "Dịch chương trình dạng *.ASM sang dạng mã máy *.OBJ"
DB(27) = 3