Professional Documents
Culture Documents
Chương 34
Chương 34
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Incorrect
ERRBước 5 là ghi kết quả vào thanh ghi (WB), có nhiều lệnh có bước 5
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
Question 2 Ý nào sau đây là sai liên quan đến lệnh Assembly: jnge label, trong đó label là một nhãn
Incorrect
Lệnh sẽ nhảy đến label nếu s>d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên có dấu
Lệnh này bắt buộc d phải là thanh ghi mục đích chung (general purpose) như %rax
Ví dụ một lệnh là cvttsd2si %xmm0, %eax trong đó %xmm0 đang chứa một số kiểu double
Question 4 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 0000 0001 1010 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 0000 0000 0000 0000 0000 0001 1010 1101
Question 5 Cho lệnh MIPS beq $t2, $t3,25, ý nào sau đây là sai?
Correct
ERRTheo cấu trúc lệnh I-format thì phần rt sẽ là địa chỉ của thanh ghi t2
54.169.199.103/mod/quiz/review.php?attempt=1186&cmid=382 1/7
28/11/2019 Bài kiểm tra Chương 3 +4
Question 6 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại J-format, xác định giá trị của phần
Incorrect Address của lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 56280
Question 7 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Correct thanh ghi), xác định ý nào sau đây là sai?
Mark 1.00 out of
1.00 Select one:
ERRBước 1 không sử dụng bất kỳ đơn vị chính nào
ERRLệnh loại J-format chỉ có một lệnh duy nhất là lệnh nhảy không điều kiện j (jump)
ERRLệnh loại R-format là lệnh có các tham số được lưu trong các thanh ghi
ERRLệnh loại R-format là lệnh có các tham số được lưu trong các thanh ghi
Question 10 Biết lệnh MIPS sau 00000010001100100100000000100000 thuộc loại R-format, ý nào sau đây là sai?
Correct
Question 11 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại I-format, xác định giá trị của phần
Correct offset của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 12186
54.169.199.103/mod/quiz/review.php?attempt=1186&cmid=382 2/7
28/11/2019 Bài kiểm tra Chương 3 +4
Question 12 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện phép toán a=c*(*b)+25; trong đó các biến được khai
Correct báo như sau float a; double *b; float c=1.8; và giả sử con trỏ b đã được gán địa chỉ của một biến kiểu double.
Mark 1.00 out of mov b,%eax
1.00
mulss c, %xmm0
mov $25,%eax
cvtsi2ss %eax,%xmm1
addss %xmm1,%xmm0
movss %xmm0, a
Select one:
Lệnh mulss c, %xmm0 là sai vì cần gán c vào một thanh ghi xmm
Thiếu lệnh chuyển đổi kiểu dữ liệu từ double sang float sau khi gán cho %xmm0 gía trị của *b
Có thể dùng lệnh movss để gán trực tiếp hằng số 25 vào thanh ghi %xmm1
Question 13 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 1100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 1111 1111 1111 1111 1100 1001 1110 1101
54.169.199.103/mod/quiz/review.php?attempt=1186&cmid=382 3/7
28/11/2019 Bài kiểm tra Chương 3 +4
Question 14 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Incorrect
ecx=ebx=1;
Mark 0.00 out of
1.00
for(eax=1; eax<n; eax++) {
edx=ecx;
ecx+=ebx;
ebx=edx;
biết các thanh ghi đang chứa các số không dấu, n được khai báo unsigned int n=23.
mov $1, %ebx
L1:
cmp n, %eax
jae endfor
mov %edx,%ebx
jmp L1
endfor:
Select one:
Sai ở dòng endfor
Question 15 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct funct của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 24
54.169.199.103/mod/quiz/review.php?attempt=1186&cmid=382 4/7
28/11/2019 Bài kiểm tra Chương 3 +4
Question 16 Cho lệnh MIPS beq $t1, $t2, 789, xác định ý nào sau đây là sai?
Correct
ERR789 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 789 lệnh hướng về phía đầu
chương trình
Question 17 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
Question 18 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại I-format, xác định giá trị của phần
Correct offset của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 56280
Question 19 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Correct thanh ghi), xác định ý nào sau đây là sai?
Mark 1.00 out of
1.00 Select one:
ERRBước 3, trừ lệnh J-format, tất cả đều sử dụng bộ xử lý ALU
Question 20 Ý nào sau đây là sai liên quan đến lệnh Assembly neg %al với giả sử hiện tại al đang mang giá trị là 3
Correct
Giá trị của %al sau khi thực hiện xong lệnh là -3
Lệnh trên đảo giá trị của các bit trong thanh ghi %al
Sau khi thực hiện giá trị của %al và %bl bị thay đổi
Sau khi thực hiện, giá trị của một số cờ trong thanh ghi trạng thái bị thay đổi
54.169.199.103/mod/quiz/review.php?attempt=1186&cmid=382 5/7
28/11/2019 Bài kiểm tra Chương 3 +4
Question 22 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại I-format, xác định thanh ghi rt của
Incorrect lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 19
Question 23 Ý nào sau đây là sai về giải pháp cài đặt CPU đa chu kỳ
Incorrect
ERRThao tác trong mỗi chu kỳ chỉ được phép sử dụng tối đa 1 đơn vị tính toán chính (ví dụ như ALU) để chúng ta
không phải nhân bản các đơn vị tính toán do đó tiết kiệm chi phí cũng như giảm độ phức tạp của mạch
ERRCác chu kỳ trong 1 lệnh là phụ thuộc nhau theo nghĩa chu kỳ sau sẽ mỗi chu kỳ sẽ thực hiện 1 công đoạn của
một việc chung
ERRCác đơn vị tính toán chính (như ALU) sẽ được chia sẻ giữa các thao tác trong các chu kỳ
Question 25 Ý nào sau đây là sai liên quan đến các phương pháp cài đặt bộ vi xử lý CPU?
Correct
ERRGiải pháp đơn chu kỳ có nhược điểm là lệnh chạy nhanh sẽ lãng phí thời gian
ERRGiải pháp đa chu kỳ chia lệnh thành các bước nhỏ hơn, và các bước nhỏ được thực hiện trong khoảng thời gian
bằng nhau là 1 chu kỳ
Question 26 Đâu không phải là tên thanh ghi trong kiến trúc CPU của Intel?
Correct
AX
RAX
R9X
Question 27 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Correct thanh ghi), xác định ý nào sau đây là sai?
Mark 1.00 out of
1.00 Select one:
ERRBước 2 sử dụng bộ xử lý ALU
54.169.199.103/mod/quiz/review.php?attempt=1186&cmid=382 6/7
28/11/2019 Bài kiểm tra Chương 3 +4
Question 28 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 18
Ví dụ một lệnh là cvttsd2si %xmm0, %eax trong đó %xmm0 đang chứa một số kiểu double
Lệnh này bắt buộc d phải là thanh ghi mục đích chung (general purpose) như %rax
Question 30 Ý nào sau đây là sai liên quan đến lệnh Assembly: jns label, trong đó label là một nhãn
Correct
Nhãn có địa chỉ trùng với lệnh đầu tiên ngay sau nó
54.169.199.103/mod/quiz/review.php?attempt=1186&cmid=382 7/7
29/11/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính biểu thức c=10-(a[3]+a[2]+a[1]); trong đó các biến được khai
Incorrect báo như sau int c, a[4]; và giả sử mảng a đã được gán giá trị.
Mark 0.00 out of mov $2, %edx
1.00
dec %edx
mov %eax, c
Select one:
Sai ở lệnh add a(,%edx,4), %eax
Question 2 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có thao tác ALUOut = (PC + sign-extend(IR[15-0]) < < 2), ý nào
Incorrect sau đây là sai?
Mark 0.00 out of
1.00 Select one:
ERRGiả sử IR[15-0]=1010 1100 0101 1110 thì sign-extend(IR[15-0])= 0000 0000 0000 0000 1010 1100 0101 1110
ERRGiả sử IR[15-0]=0110 1100 0111 0110 thì sign-extend(IR[15-0])= 0000 0000 0000 0000 0110 1100 0111 0110
ERRGiả sử IR[15-0]=1110 1100 0111 0110 thì sign-extend(IR[15-0])= 1111 1111 1111 1111 1110 1100 0111 0110
Question 3 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước 4 truy cập bộ nhớ (đối với lệnh đọc/ghi dữ liệu từ RAM) hoặc thanh ghi (đối với lệnh R-type) viết tắt là MEM
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
54.169.199.103/mod/quiz/review.php?attempt=1209&cmid=382 1/9
29/11/2019 Bài kiểm tra Chương 3 +4
Question 4 Cho cấu trúc của lệnh J-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
ERRPhần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo (theo đơn vị byte)
Question 5 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Incorrect
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
Question 6 Cho lệnh MIPS or $t1, $t2, $t3, xác định ý nào sau đây là sai?
Incorrect
ERRLệnh này thực hiện phép toán $t3=$t1 OR $t2, trong đó OR là phép toán thao tác or bit
Question 7 Ý nào sau đây là sai liên quan đến lệnh Assembly: jnl label, trong đó label là một nhãn
Correct
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s<=d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
54.169.199.103/mod/quiz/review.php?attempt=1209&cmid=382 2/9
29/11/2019 Bài kiểm tra Chương 3 +4
Question 9 Ý nào sau đây là đúng về đoạn mã Assembly tính toán biểu thức a=b+c; trong đó các biến được khai báo như sau:
Incorrect unsigned int a; unsigned int c=-25; unsigned long b=283;
Mark 0.00 out of mov b, %rax
1.00
add c, %eax
mov %eax, a
Select one:
Thiếu lệnh khởi tạo giá trị cho a
Question 10 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Correct lệnh trong hệ 10, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 9
Question 11 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có thao tác ALUOut = (PC + sign-extend(IR[15-0]) < < 2), ý nào
Correct sau đây là sai?
Mark 1.00 out of
1.00 Select one:
ERRHàm sign-extend có nhiệm vụ chuyển đổi một số 18 bit thành 32 bit do có thao tác dịch trái ( < <) 2 bit
ERRGiả sử IR[15-0]=1110 1100 0111 0110 thì sign-extend(IR[15-0])= 1111 1111 1111 1111 1110 1100 0111 0110
ERRGiả sử IR[15-0]=0110 1100 0111 0110 thì sign-extend(IR[15-0])= 0000 0000 0000 0000 0110 1100 0111 0110
Question 12 Ý nào sau đây là đúng liên quan đến lệnh đoạn mã Assembly thực hiện lệnh if(%eax>%ebx && %eax>=%ecx) %edx=2;
Incorrect biết %eax, %ebx, %ecx đang chứa các số nguyên có dấu
Mark 0.00 out of cmp %ebx, %eax
1.00
jle endif
jl endif
mov 2, %edx
endif:
Select one:
Sai ở 2 lệnh jl và jle
Cần tráo đổi vị trí của 2 tham số của 2 lệnh cmp cho nhau
Thiế dấ $ t ướ ố2
54.169.199.103/mod/quiz/review.php?attempt=1209&cmid=382 3/9
29/11/2019 Bài kiểm tra Chương 3 +4
Thiếu dấu $ trước số 2
Question 13 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRKhông thể gộp bước 4 và 5 lại vì nó vi phạm điều kiện tại mỗi bước chỉ sử dụng tối đa 1 đơn vị xử lý chính
Question 14 Ý nào sau đây là sai liên quan đến lệnh Assembly: jge label, trong đó label là một nhãn
Correct
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên có dấu
Question 15 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính biểu thức c=10-(a[3]+a[2]+a[1]); trong đó các biến được khai
Incorrect báo như sau int c, a[4]; và giả sử mảng a đã được gán giá trị.
Mark 0.00 out of mov $2, %edx
1.00
dec %edx
mov %eax, c
Select one:
Chương trình hoàn toàn đúng
Question 16 Trong bước truy cập bộ nhớ MEM của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh beq thì thao tác được thực hiện là if (A==B) PC = ALUOut
ERRNếu là lệnh đọc từ bộ nhớ thì thao tác thực hiện sẽ là: MDR = Memory[ALUOut]
54.169.199.103/mod/quiz/review.php?attempt=1209&cmid=382 4/9
29/11/2019 Bài kiểm tra Chương 3 +4
Question 17 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại I-format, xác định giá trị của phần
Correct offset của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 65370
Question 18 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh trong hệ 10, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 11
Question 19 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
ERRThanh ghi con trỏ lệnh chỉ được cập nhật duy nhất ở bước này
Question 20 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện thủ tục C
Incorrect
void f1(double *dp, int a, float *fp){
Mark 0.00 out of
1.00
*dp=(double) a*(*fp);
f1:
mov fp,%eax
cvtsi2sd a,%xmm1
ret
Select one:
Sai ở lệnh movsd 0(%eax), %xmm0
54.169.199.103/mod/quiz/review.php?attempt=1209&cmid=382 5/9
29/11/2019 Bài kiểm tra Chương 3 +4
Question 21 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Incorrect thanh ghi), xác định ý nào sau đây là sai?
Mark 0.00 out of
1.00 Select one:
ERRBước 4 của lệnh lw có truy cập tập thanh ghi
Question 22 Cho lệnh MIPS beq $t1, $t2, -199, xác định ý nào sau đây là sai?
Incorrect
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
ERRLệnh này cần 4 chu kỳ để thực hiện, bước thứ 4 là nhảy đến lệnh được rẽ nhánh
Question 23 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Incorrect chuyển đổi số 0100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 0.00 out of
1.00
Answer: 6
Question 24 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại I-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 0
Question 25 Xác định ý nào sau là sai về lệnh j (jump) trong kiến trúc MIPS?
Incorrect
ERRPhần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo (theo đơn vị byte)
Question 26 Cho lệnh MIPS beq $t1, $t2, -199, xác định ý nào sau đây là sai?
Incorrect
ERRLệnh này cần 4 chu kỳ để thực hiện, bước thứ 4 là nhảy đến lệnh được rẽ nhánh
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
ERR-199 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 199 lệnh hướng về phía đầu
chương trình
54.169.199.103/mod/quiz/review.php?attempt=1209&cmid=382 6/9
29/11/2019 Bài kiểm tra Chương 3 +4
Question 27 Ý nào sau đây là sai liên quan đến lệnh Assembly div %rbx
Incorrect
Question 28 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct funct của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 24
Question 29 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 4
54.169.199.103/mod/quiz/review.php?attempt=1209&cmid=382 7/9
29/11/2019 Bài kiểm tra Chương 3 +4
Question 30 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Correct if(eax==1) eax=ebx+1;
Mark 1.00 out of else if (eax==2) ebx=eax+ecx+2;
1.00 else if (eax==3) ebx=eax+ecx+3;
biết các thanh ghi đang chứa các số không dấu.
if: cmp $1, %eax
jne L1
jmp endif
L1:
jge L2
jmp endif
L2:
jne endif
endif:
Select one:
Sai ở lệnh jge L2
54.169.199.103/mod/quiz/review.php?attempt=1209&cmid=382 8/9
29/11/2019 Bài kiểm tra Chương 3 +4
54.169.199.103/mod/quiz/review.php?attempt=1209&cmid=382 9/9
28/11/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh thuộc kiểu R-type
Question 2 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThanh ghi con trỏ lệnh chỉ được cập nhật duy nhất ở bước này
ERRThác tác thứ 2 nhằm thực hiện một cấu trúc ngầm định là cấu trúc tuần tự
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
Question 3 Đâu không phải là tên thanh ghi trong kiến trúc CPU của Intel?
Correct
R9X
AX
RAX
Question 4 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, trong mọi trường hợp
giá trị của ALUOut luôn được sử dụng ở một trong các bước sau này
54.169.199.103/mod/quiz/review.php?attempt=1187&cmid=382 1/6
28/11/2019 Bài kiểm tra Chương 3 +4
Question 5 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Not answered shamt của lệnh, ví dụ 6?
Marked out of
1.00
Answer:
Question 6 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại I-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 9
Question 7 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Not answered chuyển đổi số 0111 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Marked out of
1.00
Answer:
Question 8 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Not answered chuyển đổi số 1000 0001 1010 1100 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Marked out of
1.00
Answer:
Question 9 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Not answered chuyển đổi số 0111 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Marked out of
1.00
Answer:
Question 10 Cho lệnh MIPS sau: 00000000100010001111111101011001, biết rằng nó thuộc loại R-format, xác định thanh ghi rd của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 31
Question 11 Ý nào sau đây là sai liên quan đến lệnh Assembly: jcxz label, trong đó label là một nhãn
Incorrect
54.169.199.103/mod/quiz/review.php?attempt=1187&cmid=382 2/6
28/11/2019 Bài kiểm tra Chương 3 +4
Question 12 Cho lệnh MIPS beq $t1, $t2, 789, xác định ý nào sau đây là sai?
Correct
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
Question 13 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct funct của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 24
Question 14 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính biểu thức c=10-(a[3]+a[2]+a[1]); trong đó các biến được khai
Incorrect báo như sau int c, a[4]; và giả sử mảng a đã được gán giá trị.
Mark 0.00 out of mov $3, %edx
1.00
dec %edx
dec %edx
movsd %eax, c
Select one:
add a(,%edx,4), %eax
Question 15 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại J-format, xác định giá trị của phần
Not answered Address của lệnh, ví dụ 6?
Marked out of
1.00
Answer:
54.169.199.103/mod/quiz/review.php?attempt=1187&cmid=382 3/6
28/11/2019 Bài kiểm tra Chương 3 +4
Ví dụ một lệnh là mulsd $5, %xmm0 trong đó %xmm0 đang chứa một số kiểu double
Ví dụ một lệnh là minsd a, %xmm0 trong đó %xmm0 đang chứa một số kiểu double, và a là một biến kiểu double
Đây là lệnh lấy giá trị của số nhỏ nhất trong 2 số kiểu double
Question 18 Ý nào sau đây là sai liên quan đến lệnh Assembly: jg label, trong đó label là một nhãn
Correct
Lệnh sẽ nhảy đến label nếu s>d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Question 19 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại I-format, xác định thanh ghi rt của
Not answered lệnh, ví dụ 6?
Marked out of
1.00
Answer:
Question 20 Đâu không phải là tên thanh ghi trong kiến trúc CPU của Intel?
Incorrect
RAX
MX
AH
Question 21 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất, A được sử dụng nếu
đây là lệnh R-type
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ, nó sẽ được sử dụng nếu đây là lệnh
tham chiếu bộ nhớ
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
54.169.199.103/mod/quiz/review.php?attempt=1187&cmid=382 4/6
28/11/2019 Bài kiểm tra Chương 3 +4
Lệnh này bắt buộc d phải là thanh ghi mục đích chung (general purpose) như %rax
Question 24 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại J-format, xác định giá trị của phần
Not answered Address của lệnh, ví dụ 6?
Marked out of
1.00
Answer:
Question 25 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh trong hệ 10, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 14
Question 26 Biết lệnh MIPS sau 00000010001100100100000000100000 thuộc loại R-format, ý nào sau đây là sai?
Correct
Question 27 Cho lệnh MIPS or $t1, $t2, $t3, xác định ý nào sau đây là sai?
Incorrect
Question 28 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại J-format, xác định giá trị của phần
Incorrect Address của lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 32
54.169.199.103/mod/quiz/review.php?attempt=1187&cmid=382 5/6
28/11/2019 Bài kiểm tra Chương 3 +4
Question 29 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính tổng n số tự nhiên đầu tiên, trong đó n được khai báo
Incorrect unsigned int n; kết quả chứa ở thanh ghi %rax
Mark 0.00 out of xor %rcx, %rcx
1.00
mov n,%rcx
for:
loop for
Select one:
Thiếu lệnh gán %rax=0
Question 30 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Not answered chuyển đổi số 1100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Marked out of
1.00
Answer:
54.169.199.103/mod/quiz/review.php?attempt=1187&cmid=382 6/6
28/11/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Cho lệnh MIPS beq $t1, $t2, -199, xác định ý nào sau đây là sai?
Correct
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
ERR-199 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 199 lệnh hướng về phía đầu
chương trình
Question 2 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2, B sẽ được sử dụng nếu đây
là lệnh R-type
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ, nó sẽ được sử dụng nếu đây là lệnh
tham chiếu bộ nhớ
Question 3 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 9
Question 4 Ý nào sau đây là sai về lệnh jnz label, trong đó label là một nhãn
Correct
Trước khi sử dụng lệnh này cần thực hiện một lệnh nào đó có tác dụng cập nhật trạng thái của ZF
Question 5 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 0100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 0000 0000 0000 0000 0100 1001 1110 1101
54.169.199.103/mod/quiz/review.php?attempt=1193&cmid=382 1/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 6 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 31
Question 7 Ý nào sau đây là sai về lệnh jz label, trong đó label là một nhãn
Correct
Trước khi sử dụng lệnh này cần thực hiện một lệnh nào đó có tác dụng cập nhật trạng thái của ZF
Question 8 Cho lệnh MIPS sau: 00000000100010001111111101011001, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 8
Question 9 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất, A được sử dụng nếu
đây là lệnh nhảy không điều kiện
Question 10 Ý nào sau đây là đúng về lệnh movsd arr(,%eax,8),%xmm1, trong đó biến arr được khai báo như sau arr: .double 3.1, 2.3,
Correct 3.4, 4.5, 5.6
Mark 1.00 out of
1.00 Select one:
Số 8 trong lệnh là chỉ số của phần tử trong mảng
Lệnh này gán giá trị của một số thực trong %xmm1 vào một phần tử của mảng arr
Lệnh này gán 1 phần tử của mảng số thực ở vị trí được lưu ở thanh ghi %eax vào thanh ghi %xmm1
Question 11 Lệnh nào sau đây là sai liên quan đến lệnh Assembly jmp label, trong đó label là một nhãn
Incorrect
Lệnh có làm thay đổi giá trị của các cờ trong thanh ghi trạng thái
Lệnh này chỉ có tác dụng chuyển con trỏ lệnh (thanh ghi RIP) đến lệnh ở địa chỉ label
54.169.199.103/mod/quiz/review.php?attempt=1193&cmid=382 2/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 12 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Incorrect
Select one:
a. Phần op xác định lệnh cụ thể nào sẽ được thực thi
c. Để cấu trúc ALU phù hợp với lệnh I-format ở dưới thì sẽ cần thay đổi: kích thước của thanh ghi từ 8 lên thành 32,
số lượng thanh ghi từ 4 thành 32, kích thước của toán hạng Operand1, Operand2 và Destination từ 4 thành 5
Question 13 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Incorrect
Question 14 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh nhảy không điều kiện
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
54.169.199.103/mod/quiz/review.php?attempt=1193&cmid=382 3/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 15 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct funct của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 26
Lệnh này sẽ cập nhật trạng thái một số cờ trong thanh ghi trạng thái giống như lệnh cmp
Question 17 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính tichs (%rax * %rbx) của của 2 số nguyên dương chứa trong
Incorrect %rax và %rbx, tuân theo giải thuật
Mark 0.00 out of %rcx=0;
1.00
while(%rbx>0) {
%rcx +=%rax;
%rbx--;
###
xor %rcx,%rcx
L1:
test $0,%rbx
jz found
add %rax,%rcx
dec %rbx
jmp L1
found:
Select one:
Nhãn found phải đặt là endwhile
54.169.199.103/mod/quiz/review.php?attempt=1193&cmid=382 4/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 18 Ý nào sau đây là sai liên quan đến lệnh Assembly: jle label, trong đó label là một nhãn
Incorrect
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên có dấu
Question 19 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính biểu thức c=10-(a[3]+a[2]+a[1]); trong đó các biến được khai
Correct báo như sau int c, a[4]; và giả sử mảng a đã được gán giá trị.
Mark 1.00 out of mov $2, %edx
1.00
dec %edx
mov %eax, c
Select one:
Chương trình hoàn toàn đúng
Question 20 Cho cấu trúc của lệnh J-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
ERRPhần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo (theo đơn vị byte)
54.169.199.103/mod/quiz/review.php?attempt=1193&cmid=382 5/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 21 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tìm ước số chung lớn nhất của 2 số nguyên (lớn hơn 0) chứa
Incorrect trong %rax và %rbx, tuân theo giải thuật
Mark 0.00 out of while(a!=b) if(a>b) a-=b; else b-=a;
1.00
L1:
cmp %rbx,%rax
je found
jb else
sub %rbx,%rax
jmp L1
else:
sub %rax,%rbx
jmp L1
found:
Select one:
Sai ở lệnh je found
Question 22 Đâu không phải là tên thanh ghi trong kiến trúc CPU của Intel?
Incorrect
RAX
XMM16
MMX0
Question 23 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2, B được sử dụng nếu đây là
lệnh đọc dữ liệu từ bộ nhớ
54.169.199.103/mod/quiz/review.php?attempt=1193&cmid=382 6/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 24 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 0
Question 25 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRKhông thể gộp bước 4 và 5 lại vì nó vi phạm điều kiện tại mỗi bước chỉ sử dụng tối đa 1 đơn vị xử lý chính
Question 26 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
ERRThác tác thứ 2 của bước này có thể gây ra sai sót khi gặp lệnh nhảy
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
Question 27 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có thao tác ALUOut = (PC + sign-extend(IR[15-0]) < < 2), ý nào
Correct sau đây là sai?
Mark 1.00 out of
1.00 Select one:
ERRGiả sử IR[15-0]=1010 1100 0101 1110 thì sign-extend(IR[15-0])= 0000 0000 0000 0000 1010 1100 0101 1110
ERRGiả sử IR[15-0]=0110 1100 0111 0110 thì sign-extend(IR[15-0])= 0000 0000 0000 0000 0110 1100 0111 0110
ERRGiả sử IR[15-0]=1110 1100 0111 0110 thì sign-extend(IR[15-0])= 1111 1111 1111 1111 1110 1100 0111 0110
Question 28 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Correct thanh ghi), xác định ý nào sau đây là sai?
Mark 1.00 out of
1.00 Select one:
ERRBước 3, trừ lệnh J-format, tất cả đều sử dụng bộ xử lý ALU
Question 29 Cho lệnh MIPS beq $t2, $t3,25, ý nào sau đây là sai?
Correct
ERRTheo cấu trúc lệnh I-format thì phần offset sẽ có giá trị là 25
54.169.199.103/mod/quiz/review.php?attempt=1193&cmid=382 7/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 30 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
ERRThanh ghi con trỏ lệnh chỉ được cập nhật duy nhất ở bước này
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
54.169.199.103/mod/quiz/review.php?attempt=1193&cmid=382 8/8
28/11/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 31
Question 2 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rd của
Correct lệnh trong hệ 10, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 7
Question 3 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct funct của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 24
Question 4 Ý nào sau đây là sai liên quan đến lệnh Assembly mul %bl
Correct
Giá trị của toán hạng thứ nhất được lưu ở thanh ghi %al
Question 5 Cho cấu trúc của lệnh R-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
ERRKích thước phần địa chỉ của các thanh ghi là 5 bits, suy ra tổng số lượng thanh ghi trong kiến trúc MIPS là 32
ERRPhần op là đủ thông tin để xác định lệnh cụ thể nào sẽ được thực thi
54.169.199.103/mod/quiz/review.php?attempt=1194&cmid=382 1/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 6 Ý nào sau đây là sai liên quan đến lệnh Assembly: jnb label, trong đó label là một nhãn
Incorrect
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s<=d trong đó s và d là tham số của lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
Question 7 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThác tác thứ 2 nhằm thực hiện một cấu trúc ngầm định là cấu trúc tuần tự
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU, nó có
thể gây ra lỗi khi lệnh đang xử lý là lệnh nhảy
ERRTải lệnh làm nhiệm vụ đọc một lệnh từ bộ nhớ vào một thanh ghi trong CPU để phục vụ quá trình xử lý ở các
bước tiếp theo
Question 8 Ý nào sau đây là sai liên quan đến lệnh Assembly: jae label, trong đó label là một nhãn
Incorrect
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s<=d trong đó s và d là tham số của lệnh cmp s,d
Question 9 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại I-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 8
Question 10 Cho lệnh MIPS sau: 00000000100010001111111101011001, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 8
Question 11 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 0
Question 12 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 18
54.169.199.103/mod/quiz/review.php?attempt=1194&cmid=382 2/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 13 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có thao tác ALUOut = (PC + sign-extend(IR[15-0]) < < 2), ý nào
Incorrect sau đây là sai?
Mark 0.00 out of
1.00 Select one:
ERRGiả sử IR[15-0]=1110 1100 0111 0110 thì sign-extend(IR[15-0])= 1111 1111 1111 1111 1110 1100 0111 0110
ERRGiả sử IR[15-0]=0110 1100 0111 0110 thì sign-extend(IR[15-0])= 0000 0000 0000 0000 0110 1100 0111 0110
ERRGiả sử IR[15-0]=1010 1100 0101 1110 thì sign-extend(IR[15-0])= 0000 0000 0000 0000 1010 1100 0101 1110
Question 14 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRTải lệnh làm nhiệm vụ đọc một lệnh từ bộ nhớ vào một thanh ghi trong CPU để phục vụ quá trình xử lý ở các
bước tiếp theo
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU, nó có
thể gây ra lỗi khi lệnh đang xử lý là lệnh nhảy
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
Question 15 Ý nào sau đây đúng về đoạn mã Assembly thực hiện lệnh C if(a!=0) x=-b/a; trong đó các biến được khai báo như sau:
Incorrect double a=19; double b=39,x;
Mark 0.00 out of xorps %xmm1, %xmm1
1.00
movsd a, %xmm0
ucomisd %xmm0,%xmm1
je endif
mulsd b, %xmm1
movsd %xmm1, x
endif:
Select one:
Đoạn mã là chính xác
54.169.199.103/mod/quiz/review.php?attempt=1194&cmid=382 3/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 16 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Correct if(eax==1) eax=ebx+1;
Mark 1.00 out of else if (eax==2) ebx=eax+ecx+2;
1.00 else if (eax==3) ebx=eax+ecx+3;
biết các thanh ghi đang chứa các số không dấu.
if: cmp $1, %eax
jne L1
jmp endif
L1:
jge L2
jmp endif
L2:
jne endif
endif:
Select one:
Sai ở dòng endif
54.169.199.103/mod/quiz/review.php?attempt=1194&cmid=382 4/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 17 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính phần dư của phép chia 2 số nguyên dương (hay phép toán a
Incorrect % b) chứa trong %rax và %rbx, tuân theo giải thuật
Mark 0.00 out of while(%rax>=%rbx) %rax -= %rbx; kết quả chứa ở %rax
1.00
L1:
cmp %rbx,%rax
jb found
sub %rbx,%rax
jmp L1
found:
Select one:
Thừa lệnh jmp L1
Question 18 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ hai B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác đầu tiên A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là mỗi ô nhớ có kích thước 4 byte
Question 19 Ý nào sau đây là sai liên quan đến lệnh Assembly div %rbx
Correct
Đây là phép chia 2 số nguyên không dấu, số bị chia có kích thước 64 bit
Question 20 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
ERRThanh ghi con trỏ lệnh chỉ được cập nhật duy nhất ở bước này
ERRThác tác thứ 2 nhằm thực hiện một cấu trúc ngầm định là cấu trúc tuần tự
54.169.199.103/mod/quiz/review.php?attempt=1194&cmid=382 5/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 21 Ý nào sau đây là sai về giải pháp cài đặt CPU đa chu kỳ
Correct
ERRCác đơn vị tính toán chính (như ALU) sẽ được chia sẻ giữa các thao tác trong các chu kỳ
ERRCác bước khác nhau có thể thực hiện trong khoảng thời gian dài khác nhau
ERRThao tác trong mỗi chu kỳ chỉ được phép sử dụng tối đa 1 đơn vị tính toán chính (ví dụ như ALU) để chúng ta
không phải nhân bản các đơn vị tính toán do đó tiết kiệm chi phí cũng như giảm độ phức tạp của mạch
Question 22 Cho lệnh MIPS add $t1, $t2, $t3, xác định ý nào sau đây là sai?
Incorrect
Question 23 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
ERRThanh ghi con trỏ lệnh chỉ được cập nhật duy nhất ở bước này
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
Ví dụ một lệnh là subss $5, %xmm0 trong đó %xmm0 đang chứa một số kiểu float
Question 25 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước đầu tiên là tải lệnh (IF), đưa lệnh vào thanh ghi lệnh của CPU để chuẩn bị cho các bước tiếp theo, đồng thời
chuyển con trỏ lệnh đến lệnh kế tiếp
ERRBước 3 là thực thi, thực sự thực hiện thao tác chính của lệnh
54.169.199.103/mod/quiz/review.php?attempt=1194&cmid=382 6/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 26 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Correct if(eax==1) eax=ebx+1;
Mark 1.00 out of else if (eax==2) ebx=eax+ecx+2;
1.00 else if (eax==3) ebx=eax+ecx+3;
biết các thanh ghi đang chứa các số không dấu.
cmp $1, %eax
jne L1
jmp endif
L1:
jne L2
jmp endif
L2:
jne endif
endif:
Select one:
Sai ở dòng endif
54.169.199.103/mod/quiz/review.php?attempt=1194&cmid=382 7/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 27 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Incorrect chuyển đổi số 1110 1001 1110 1111 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 0.00 out of
1.00
Answer: 0001 0001 0010 1110 1001 1110 1111 0000
Question 28 Ý nào sau đây là sai liên quan đến lệnh Assembly mov val, %eax, trong đó val được khai báo như sau val: .int 10
Incorrect
Lệnh này gán giá trị của val vào thanh ghi %eax
Lệnh này tương đương với lệnh %eax=val; trong ngôn ngữ lập trình C
Question 29 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh thuộc kiểu R-type
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
Question 30 Cho lệnh MIPS beq $t1, $t2, 789, xác định ý nào sau đây là sai?
Correct
ERR789 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 789 lệnh hướng về phía đầu
chương trình
54.169.199.103/mod/quiz/review.php?attempt=1194&cmid=382 8/8
11/28/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Ý nào sau đây là sai liên quan đến lệnh Assembly mul %rbx
Correct
Question 2 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 0000 0001 1010 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 0000 0000 0000 0000 0000 0001 1010 1101
Question 3 Cho lệnh MIPS beq $t1, $t2, 789, xác định ý nào sau đây là sai?
Correct
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
ERR789 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 789 lệnh hướng về phía cuối
chương trình
Question 4 Biết lệnh MIPS sau 00000010001100100100000000100000 thuộc loại R-format, ý nào sau đây là sai?
Correct
54.169.199.103/mod/quiz/review.php?attempt=1184&cmid=382 1/10
11/28/2019 Bài kiểm tra Chương 3 +4
Giá trị của cờ dấu SF và cờ zero ZF được cập nhật sau khi lệnh thực hiện
Sau khi thực hiện giá trị của %al và %bl bị thay đổi
Question 6 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Incorrect
Select one:
a. Phần rt sẽ được truyền vào Operand2 và sẽ được sử dụng ở nhánh màu đỏ
b. Phần op kết hợp với shamt và funct xác định lệnh cụ thể nào sẽ được thực thi
Question 7 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Incorrect
ERRPhần op kết hợp với shamt và funct xác định lệnh cụ thể nào sẽ được thực thi
54.169.199.103/mod/quiz/review.php?attempt=1184&cmid=382 2/10
11/28/2019 Bài kiểm tra Chương 3 +4
Question 8 Ý nào sau đây là sai liên quan đến lệnh Assembly: ja label, trong đó label là một nhãn
Incorrect
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên không dấu
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s>d trong đó s và d là tham số của lệnh cmp s,d
Question 9 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C if(eax>ebx && eax>ecx) eax=ebx+ecx; else
Incorrect ebx=eax+ecx; biết các thanh ghi đang chứa các số không dấu
Mark 0.00 out of cmp %ebx, %eax
1.00
ja else
jbe else
jmp endif
else:
endif:
Select one:
Sai ở lệnh ja else
54.169.199.103/mod/quiz/review.php?attempt=1184&cmid=382 3/10
11/28/2019 Bài kiểm tra Chương 3 +4
Question 10 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Correct
unsigned int a=5,q=3,n=10;
Mark 1.00 out of
1.00
ecx=a;
ebx=0;
như sau:
mov $a, %ecx
L1:
cmp n,%edx
je endfor
mul q
add %eax,%ebx
inc %edx
jmp L1
endfor:
Select one:
Thừa lệnh dec %edx
Question 11 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại I-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 10
54.169.199.103/mod/quiz/review.php?attempt=1184&cmid=382 4/10
11/28/2019 Bài kiểm tra Chương 3 +4
Question 12 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính nghiệm x1 của phương trình bậc 2: ax2+bx+c=0; giả sử giá
Incorrect trị của delta=b*b-4*a*c đã được tính rồi; trong đó các biến được khai báo như sau: double a=4, b=9, c=4, delta, x1, x2;
Mark 0.00 out of Các nghiệm được tính toán theo công thức x1=(-b+sqrt(delta))/(2*a); x2=(-b-sqrt(delta))/(2*a);
1.00
movsd delta, %xmm0
subsd b, %xmm0
mulsd a, %xmm1
movsd %xmm0, x1
Select one:
Chương trình hoàn toàn đúng
54.169.199.103/mod/quiz/review.php?attempt=1184&cmid=382 5/10
11/28/2019 Bài kiểm tra Chương 3 +4
Question 13 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Correct if(eax==1) eax=ebx+1;
Mark 1.00 out of else if (eax==2) ebx=eax+ecx+2;
1.00 else if (eax==3) ebx=eax+ecx+3;
biết các thanh ghi đang chứa các số không dấu.
if: cmp $1, %eax
je L1
jmp endif
L1:
jne L2
jmp endif
L2:
jne endif
endif:
Select one:
Sai ở dòng endif
Sai ở lệnh je L1
54.169.199.103/mod/quiz/review.php?attempt=1184&cmid=382 6/10
11/28/2019 Bài kiểm tra Chương 3 +4
Question 14 Ý nào sau đây là sai liên quan đến lệnh Assembly: jo label, trong đó label là một nhãn
Correct
Nhãn có địa chỉ trùng với lệnh đầu tiên ngay sau nó
Question 15 Cho cấu trúc của lệnh J-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
Select one:
a. Chỉ có duy nhất lệnh j (jump) có cấu trúc J-format
b. Phần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo theo đơn vị là lệnh
Question 16 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rd của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 17
Question 17 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 15
Question 18 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại J-format, xác định giá trị của phần
Correct Address của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 1978266
Question 19 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Correct thanh ghi), xác định ý nào sau đây là sai?
Mark 1.00 out of
1.00 Select one:
ERRBước 2 sử dụng bộ xử lý ALU
54.169.199.103/mod/quiz/review.php?attempt=1184&cmid=382 7/10
11/28/2019 Bài kiểm tra Chương 3 +4
Question 20 Ý nào sau đây là sai về giải pháp cài đặt CPU đa chu kỳ
Correct
ERRCác chu kỳ trong 1 lệnh là phụ thuộc nhau theo nghĩa chu kỳ sau sẽ mỗi chu kỳ sẽ thực hiện 1 công đoạn của
một việc chung
ERRCác đơn vị tính toán chính (như ALU) sẽ được chia sẻ giữa các thao tác trong các chu kỳ
ERRCác bước khác nhau có thể thực hiện trong khoảng thời gian dài khác nhau
Question 21 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 1100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 1111 1111 1111 1111 1100 1001 1110 1101
Question 22 Ý nào sau đây là sai liên quan đến lệnh Assembly: jg label, trong đó label là một nhãn
Incorrect
Lệnh sẽ nhảy đến label nếu s>d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên có dấu
Question 23 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 13
Question 24 Cho lệnh MIPS beq $t1, $t2, -199, xác định ý nào sau đây là sai?
Correct
ERR-199 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 199 lệnh hướng về phía đầu
chương trình
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
54.169.199.103/mod/quiz/review.php?attempt=1184&cmid=382 8/10
11/28/2019 Bài kiểm tra Chương 3 +4
Question 25 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính biểu thức c=10-(a[3]+a[2]+a[1]); trong đó các biến được khai
Incorrect báo như sau int c, a[4]; và giả sử mảng a đã được gán giá trị.
Mark 0.00 out of mov $2, %edx
1.00
dec %edx
mov %eax, c
Select one:
Chương trình hoàn toàn đúng
Question 26 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại I-format, xác định giá trị của phần
Incorrect offset của lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: -28712
Question 27 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRNếu là lệnh nhảy có điều kiện thì thao tác sẽ là: if (A==B) PC = ALUOut
ERRNếu là lệnh beq thì thao tác được thực hiện sẽ là: ALUOut = A + sign-extend(IR[15-0])
ERRNếu là lệnh R-type thì thao tác được thực hiện sẽ là ALUOut = A op B, trong đó op là phép toán cụ thể của lệnh
Question 28 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 15
Question 29 Trong bước truy cập bộ nhớ MEM của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRNếu là lệnh đọc từ bộ nhớ thì thao tác thực hiện sẽ là: Reg[IR[15-11]]= Memory[ALUOut]
ERRNếu là lệnh R-type thì thao tác được thực hiện sẽ là Reg[IR[15-11]] = ALUOut, trong đó ALUOut là kết quả của
bước thứ 2 giải mã lệnh ID
54.169.199.103/mod/quiz/review.php?attempt=1184&cmid=382 9/10
11/28/2019 Bài kiểm tra Chương 3 +4
54.169.199.103/mod/quiz/review.php?attempt=1184&cmid=382 10/10
28/11/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Ý nào sau đây là sai liên quan đến lệnh Assembly div %ebx
Correct
Đây là phép chia 2 số nguyên không dấu, số chia có kích thước gấp 2 lần số chia
Question 2 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước 5 là ghi kết quả vào thanh ghi (WB), có nhiều lệnh có bước 5
Question 3 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct funct của lệnh trong hệ 10, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 24
ERRLệnh loại R-format là lệnh có các tham số được lưu trong các thanh ghi
54.169.199.103/mod/quiz/review.php?attempt=1216&cmid=382 1/7
28/11/2019 Bài kiểm tra Chương 3 +4
Question 5 Cho lệnh MIPS beq $t1, $t2, 789, xác định ý nào sau đây là sai?
Correct
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
Question 6 Ý nào sau đây là sai liên quan đến lệnh Assembly mov val, %eax, trong đó val được khai báo như sau val: .int 10
Incorrect
Đây là lệnh gán địa chỉ của biến val vào thanh ghi %eax
Lệnh này gán giá trị của val vào thanh ghi %eax
Question 7 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, trong mọi trường hợp
giá trị của ALUOut luôn được sử dụng ở một trong các bước sau này
Question 8 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất, A được sử dụng nếu
đây là lệnh nhảy không điều kiện
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
Question 9 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại I-format, xác định giá trị của phần
Correct offset của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 65370
Question 10 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct funct của lệnh trong hệ 10, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 24
54.169.199.103/mod/quiz/review.php?attempt=1216&cmid=382 2/7
28/11/2019 Bài kiểm tra Chương 3 +4
Question 11 Ý nào sau đây là sai liên quan đến lệnh Assembly mov $val, %rax, trong đó val được khai báo như sau val: .int 10
Incorrect
Lệnh này gán giá trị của val vào thanh ghi %rax
Lệnh này tương đương với lệnh %rax=&val; trong ngôn ngữ lập trình C
Question 12 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh nhảy không điều kiện
Question 13 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRTất cả kết quả của 3 thao tác đều được dùng trong các bước tiếp theo
ERRThao tác thứ hai B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác đầu tiên A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
Question 14 Cho cấu trúc của lệnh R-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
Select one:
a. Kết hợp phần op, shamt và funct sẽ xác định lệnh cụ thể nào sẽ được thực thi
c. Kích thước phần địa chỉ của các thanh ghi là 5 bits, suy ra tổng số lượng thanh ghi trong kiến trúc MIPS là 32
d. Lệnh này sẽ tự động tải giá trị của các toán hạng vào các thanh ghi trước khi thực hiện lệnh cụ thể
Question 15 Ý nào sau đây là sai liên quan đến lệnh Assembly mul %bl
Correct
Giá trị của toán hạng thứ nhất được lưu ở thanh ghi %al
54.169.199.103/mod/quiz/review.php?attempt=1216&cmid=382 3/7
28/11/2019 Bài kiểm tra Chương 3 +4
Question 16 Ý nào sau đây là sai về giải pháp cài đặt CPU đa chu kỳ
Correct
ERRCác đơn vị tính toán chính (như ALU) sẽ được chia sẻ giữa các thao tác trong các chu kỳ
ERRCác bước khác nhau có thể thực hiện trong khoảng thời gian dài khác nhau
ERRThao tác trong mỗi chu kỳ chỉ được phép sử dụng tối đa 1 đơn vị tính toán chính (ví dụ như ALU) để chúng ta
không phải nhân bản các đơn vị tính toán do đó tiết kiệm chi phí cũng như giảm độ phức tạp của mạch
Question 17 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRKhông thể gộp bước 4 và 5 lại vì nó vi phạm điều kiện tại mỗi bước chỉ sử dụng tối đa 1 đơn vị xử lý chính
Question 18 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThác tác thứ 2 của bước này có thể gây ra sai sót khi gặp lệnh nhảy
ERRTải lệnh làm nhiệm vụ đọc một lệnh từ bộ nhớ vào một thanh ghi trong CPU để phục vụ quá trình xử lý ở các
bước tiếp theo
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
Lệnh này sẽ cập nhật trạng thái một số cờ trong thanh ghi trạng thái giống như lệnh cmp
Question 20 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct funct của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 0
Question 21 Cho lệnh MIPS and $t1, $t2, $t3, xác định ý nào sau đây là sai?
Correct
54.169.199.103/mod/quiz/review.php?attempt=1216&cmid=382 4/7
28/11/2019 Bài kiểm tra Chương 3 +4
Question 22 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính nghiệm x1 của phương trình bậc 2: ax2+bx+c=0; giả sử giá
Correct trị của delta=b*b-4*a*c đã được tính rồi; trong đó các biến được khai báo như sau: float a=4, b=9, c=4, delta, x1, x2; Các
Mark 1.00 out of nghiệm được tính toán theo công thức x1=(-b+sqrt(delta))/(2*a); x2=(-b-sqrt(delta))/(2*a);
1.00
movss delta, %xmm0
subss b, %xmm0
mulss a, %xmm1
movss %xmm0, x1
Select one:
Sai ở lệnh mov $2, %eax
54.169.199.103/mod/quiz/review.php?attempt=1216&cmid=382 5/7
28/11/2019 Bài kiểm tra Chương 3 +4
Question 23 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Incorrect
Select one:
a. Phần op xác định lệnh cụ thể nào sẽ được thực thi
c. Để cấu trúc ALU phù hợp với lệnh I-format ở dưới thì sẽ cần thay đổi: kích thước của thanh ghi từ 8 lên thành 32,
số lượng thanh ghi từ 4 thành 32, kích thước của toán hạng Operand1, Operand2 và Destination từ 4 thành 5
54.169.199.103/mod/quiz/review.php?attempt=1216&cmid=382 6/7
28/11/2019 Bài kiểm tra Chương 3 +4
Question 26 Cho lệnh MIPS beq $t1, $t2, 789, xác định ý nào sau đây là sai?
Correct
ERR789 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 789 lệnh hướng về phía cuối
chương trình
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
Ví dụ một lệnh là cvttsd2si %xmm0, %eax trong đó %xmm0 đang chứa một số kiểu double
Lệnh này bắt buộc d phải là thanh ghi mục đích chung (general purpose) như %rax
Question 28 Ý nào sau đây là sai liên quan đến lệnh Assembly: jle label, trong đó label là một nhãn
Incorrect
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên có dấu
Question 29 Cho cấu trúc của lệnh J-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
ERRPhần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo (theo đơn vị byte)
Question 30 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 8
54.169.199.103/mod/quiz/review.php?attempt=1216&cmid=382 7/7
29/11/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Cho cấu trúc của lệnh I-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Correct
Question 2 Cho lệnh MIPS beq $t1, $t2, 789, xác định ý nào sau đây là sai?
Incorrect
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
ERR789 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 789 lệnh hướng về phía cuối
chương trình
Question 3 Ý nào sau đây là sai liên quan đến lệnh Assembly div %rbx
Incorrect
Question 4 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh nhảy có điều kiện thì thao tác sẽ là: if (A==B) PC = ALUOut
ERRNếu là lệnh add thì thao tác được thực hiện sẽ là ALUOut = A + B
ERRNếu là lệnh tham chiếu bộ nhớ thì thao tác được thực hiện sẽ là: ALUOut = A + sign-extend(IR[15-0])
54.169.199.103/mod/quiz/review.php?attempt=1190&cmid=382 1/6
29/11/2019 Bài kiểm tra Chương 3 +4
Question 5 Ý nào sau đây là sai liên quan đến lệnh Assembly: jo label, trong đó label là một nhãn
Incorrect
Cần thực hiện một lệnh có tác động đến cờ OF, ví dụ lệnh add
Nhãn có địa chỉ trùng với lệnh đầu tiên ngay sau nó
Question 6 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
ERRThác tác thứ 2 nhằm thực hiện một cấu trúc ngầm định là cấu trúc tuần tự
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
Question 7 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ 3 ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
ERRThao tác đầu tiên A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRThao tác thứ hai B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2, trong mọi trường hợp giá
trị của B luôn được sử dụng ở một trong các bước sau này
Question 9 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Incorrect lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 12
Question 10 Ý nào sau đây là sai liên quan đến lệnh Assembly: jnl label, trong đó label là một nhãn
Incorrect
Lệnh sẽ nhảy đến label nếu s<=d trong đó s và d là tham số của lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
54.169.199.103/mod/quiz/review.php?attempt=1190&cmid=382 2/6
29/11/2019 Bài kiểm tra Chương 3 +4
Question 11 Cho lệnh MIPS and $t1, $t2, $t3, xác định ý nào sau đây là sai?
Correct
ERRLệnh này thực hiện phép toán $t1=$t2 AND $t3, trong đó AND là phép toán AND bit
Question 12 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại J-format, xác định giá trị của phần
Incorrect Address của lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 12
Question 14 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại I-format, xác định thanh ghi rt của
Incorrect lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 19
Ví dụ một lệnh là cvttsd2si %xmm0, %rbx trong đó %xmm0 đang chứa một số kiểu double
Question 16 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất, A được sử dụng nếu
đây là lệnh nhảy không điều kiện
Question 17 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Incorrect chuyển đổi số 0111 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 0.00 out of
1.00
Answer: 79ED
54.169.199.103/mod/quiz/review.php?attempt=1190&cmid=382 3/6
29/11/2019 Bài kiểm tra Chương 3 +4
Question 18 Cho lệnh MIPS beq $t1, $t2, 789, xác định ý nào sau đây là sai?
Incorrect
ERR789 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 789 lệnh hướng về phía cuối
chương trình
Question 19 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất, A được sử dụng nếu
đây là lệnh R-type
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2, B sẽ được sử dụng nếu đây
là lệnh R-type
Question 20 Trong bước 3 của lệnh j (jump) thực hiện thao tác PC = PC[31-28] || (IR[25-0] < < 2), ý nào sau đây là sai?
Incorrect
ERRPhép toán dịch trái ( < <) là cần thiết vì địa chỉ chứa trong IR[25-0] là địa chỉ tính theo đơn vị lệnh, cần chuyển ra
đơn vị là byte thì cần nhân với 4
ERRGiả sử IR[25-0]=00 0000 0000 1010 1100 0101 1111, và PC=0001 0000 1111 1001 1100 0111 0111 1000 thì PC =
PC[31-28] || (IR[25-0] < < 2)= 0001 0000 0000 0010 1011 0001 0111 1100
Question 21 Ý nào sau đây là sai liên quan đến lệnh Assembly mov arr(,%edx, 4),%ebx, trong đó biến arr được khai báo như sau arr: .int
Correct 34,3,12,4,3,5
Mark 1.00 out of
1.00 Select one:
arr là một mảng số nguyên kiểu int
Đây là lệnh gán giá trị của một phần tử của mảng arr vào thanh ghi ebx
Question 22 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRTất cả kết quả của 3 thao tác đều được dùng trong các bước tiếp theo
ERRThao tác thứ hai B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác đầu tiên A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
54.169.199.103/mod/quiz/review.php?attempt=1190&cmid=382 4/6
29/11/2019 Bài kiểm tra Chương 3 +4
Question 23 Cho lệnh MIPS or $t1, $t2, $t3, xác định ý nào sau đây là sai?
Incorrect
ERRLệnh này thực hiện phép toán $t3=$t1 OR $t2, trong đó OR là phép toán thao tác or bit
Question 24 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh nhảy có điều kiện thì thao tác sẽ là: if (A==B) PC = ALUOut
ERRNếu là lệnh tham chiếu bộ nhớ thì thao tác được thực hiện sẽ là: ALUOut = A + sign-extend(IR[15-0])
ERRNếu là lệnh nhảy không điều kiện thì thao tác sẽ là PC = PC[31-28] || (IR[25-0] < < 2), trong đó phép toán || là
phép toán OR
movsd %xmm1,%xmm0
L1:
movsd %xmm0,result
Select one:
Lệnh tương đương trong C là %xmm0=(%xmm0<%xmm1)?xmm1:xmm0;
Về bản chất lệnh movsd %xmm1,%xmm0 chính là khối lệnh trong nhánh khi biểu thức điều kiện trong if là đúng
Question 27 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Incorrect shamt của lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 6
54.169.199.103/mod/quiz/review.php?attempt=1190&cmid=382 5/6
29/11/2019 Bài kiểm tra Chương 3 +4
Question 28 Ý nào sau đây là sai liên quan đến lệnh Assembly: jnb label, trong đó label là một nhãn
Incorrect
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s<=d trong đó s và d là tham số của lệnh cmp s,d
Question 29 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Incorrect lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 12
Question 30 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRKhông thể gộp bước 4 và 5 lại vì nó vi phạm điều kiện tại mỗi bước chỉ sử dụng tối đa 1 đơn vị xử lý chính
54.169.199.103/mod/quiz/review.php?attempt=1190&cmid=382 6/6
11/29/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 2 Ý nào sau đây là sai liên quan đến các phương pháp cài đặt bộ vi xử lý CPU?
Correct
Mark 1.00 out Select one:
of 1.00 ERRMột giải pháp là đơn chu kỳ, trong đó các lệnh khác nhau đều thực hiện trong khoảng thời gian như nhau là 1
chu kỳ
ERRGiải pháp đơn chu kỳ có ưu điểm hơn đa chu kỳ
ERRGiải pháp đơn chu kỳ có nhược điểm là lệnh chạy nhanh sẽ lãng phí thời gian
ERRGiải pháp đa chu kỳ chia lệnh thành các bước nhỏ hơn, và các bước nhỏ được thực hiện trong khoảng thời
gian bằng nhau là 1 chu kỳ
Question 3 Cho lệnh MIPS sau: 00000000100010001111111101011001, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Incorrect shamt của lệnh, ví dụ 6?
Mark 0.00 out
of 1.00
Answer: 11101
Question 4 Cho cấu trúc của lệnh I-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Correct
Mark 1.00 out
of 1.00 Select one:
ERRPhần op xác định lệnh cụ thể nào sẽ được thực thi
ERRLệnh add là thuộc loại I-format
ERRKích thước phần địa chỉ của các thanh ghi là 5 bits, suy ra tổng số lượng thanh ghi trong kiến trúc MIPS là 32
ERRPhần offset dùng để chứa hằng số
Question 6 Cho lệnh MIPS beq $t2, $t3,25, ý nào sau đây là sai?
Correct
Mark 1.00 out Select one:
of 1.00 ERRTheo cấu trúc lệnh I-format thì phần offset sẽ có giá trị là 25
ERRĐây là lệnh nhảy có điều kiện
ERRLệnh này được thực hiện trong 4 bước
ERRTheo cấu trúc lệnh I-format thì phần rt sẽ là địa chỉ của thanh ghi t2
Question 7 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
Mark 1.00 out Select one:
of 1.00 ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất, A được sử dụng
nếu đây là lệnh nhảy không điều kiện
54.169.199.103/mod/quiz/review.php?attempt=1203&cmid=382 2/8
11/29/2019 Bài kiểm tra Chương 3 +4
Question 8 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C if (a>b) { a -= b; b=10; } else b -= a; biết các
Incorrect biến được khai báo như sau: float a=198.2, b=23.8;
Mark 0.00 out movss a, %xmm0
of 1.00
movss b, %xmm1
jbe else
movss %xmm1, b
movss %xmm0, a
jmp endif
else:
movss %xmm1, b
endif:
Select one:
Chương trình hoàn toàn đúng
Sai ở lệnh mov $10, %ebx
Sai ở lệnh jmp endif
Sai ở lệnh sub %xmm1, %xmm0
Question 9 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct funct của lệnh, ví dụ 6?
Mark 1.00 out
of 1.00
Answer: 0
Question 11 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính giá trị delta của phương trình bậc 2: ax2+bx+c=0; theo
Incorrect công thức delta=b*b-4*a*c; trong đó các biến được khai báo như sau: double a=4, b=9, c=4, delta;
Mark 0.00 out mov $-4, %eax
of 1.00
cvtsi2ss %eax, %xmm0
mulsd a, %xmm0
mulsd c, %xmm0
movsd b, %xmm1
Select one:
Sai ở lệnh mov $-4, %eax
Sai ở lệnh mulsd %xmm1, %xmm1
Chương trình hoàn toàn đúng
Sai ở lệnh mov %xmm0, delta
Question 13 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
Mark 1.00 out Select one:
of 1.00 ERRThao tác đầu tiên A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRThao tác thứ 3 ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
ERRThao tác thứ hai B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là mỗi ô nhớ có kích thước 4 byte
Question 14 Ý nào sau đây là sai về giải pháp cài đặt CPU đa chu kỳ
Incorrect
Mark 0.00 out Select one:
of 1.00 ERRDữ liệu sau khi thực hiện xong các thao tác tại từng bước không cần lưu lại
ERRThao tác trong mỗi chu kỳ chỉ được phép sử dụng tối đa 1 đơn vị tính toán chính (ví dụ như ALU) để chúng ta
không phải nhân bản các đơn vị tính toán do đó tiết kiệm chi phí cũng như giảm độ phức tạp của mạch
ERRCác đơn vị tính toán chính (như ALU) sẽ được chia sẻ giữa các thao tác trong các chu kỳ
ERRCác bước khác nhau được thực hiện trong khoảng thời gian như nhau
54.169.199.103/mod/quiz/review.php?attempt=1203&cmid=382 4/8
11/29/2019 Bài kiểm tra Chương 3 +4
Question 15 Ý nào sau đây là sai liên quan đến lệnh Assembly neg %al với giả sử hiện tại al đang mang giá trị là 3
Correct
Mark 1.00 out Select one:
of 1.00 Lệnh trên tương đương với lệnh %al = -%al; trong C
Giá trị của %al sau khi thực hiện xong lệnh là -3
Lệnh có làm thay đổi giá trị của một số cờ trong thanh ghi trạng thái
Lệnh trên đảo giá trị của các bit trong thanh ghi %al
Question 16 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out
of 1.00
Answer: 9
Question 17 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Correct
Mark 1.00 out
of 1.00 Select one:
ERRĐể cấu trúc ALU phù hợp với lệnh I-format ở dưới thì sẽ cần thay đổi: kích thước của thanh ghi từ 8 lên thành
32, số lượng thanh ghi từ 4 thành 32, kích thước của toán hạng Operand1, Operand2 và Destination từ 4 thành 5
ERRPhần op xác định lệnh cụ thể nào sẽ được thực thi
ERRLệnh beq là thuộc loại I-format
ERRPhần offset dùng để chứa hằng số, nó sẽ được truyền sang đường màu đỏ từ Operand2
Question 18 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
Mark 1.00 out Select one:
of 1.00 ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh thuộc kiểu R-type
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
Question 19 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
Mark 1.00 out Select one:
of 1.00 ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
ERRBước 4 truy cập bộ nhớ (đối với lệnh đọc/ghi dữ liệu từ RAM) hoặc thanh ghi (đối với lệnh R-type) viết tắt là
MEM
ERRBước thứ 2 là giải mã lệnh (ID)
ERRBước 3 là thực thi, có lệnh không có bước này
54.169.199.103/mod/quiz/review.php?attempt=1203&cmid=382 5/8
11/29/2019 Bài kiểm tra Chương 3 +4
Question 20 Ý nào sau đây là đúng về đoạn mã Assembly tính toán biểu thức a=b+c; trong đó các biến được khai báo như sau: int
Correct a; int c=-25; long b=283;
Mark 1.00 out mov b, %rax
of 1.00
add c, %eax
mov %eax, a
Select one:
Đoạn mã là chính xác
Sai ở lệnh mov b, %rax
Sai ở lệnh add c, %eax
Thiếu lệnh khởi tạo giá trị cho a
Question 21 Cho lệnh MIPS or $t1, $t2, $t3, xác định ý nào sau đây là sai?
Correct
Mark 1.00 out Select one:
of 1.00 ERRLệnh này thực hiện phép toán $t3=$t1 OR $t2, trong đó OR là phép toán thao tác or bit
ERRChu kỳ 3 thực hiện phép OR
ERRĐây là lệnh có kiểu R-type
ERRLệnh này cần 4 chu kỳ để thực hiện
Question 22 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại J-format, xác định giá trị của phần
Incorrect Address của lệnh trong hệ 10, ví dụ 6?
Mark 0.00 out
of 1.00
Answer: 15256
Question 23 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh, ví dụ 6?
Mark 1.00 out
of 1.00
Answer: 30
Question 24 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
Mark 1.00 out Select one:
of 1.00 ERRNếu là lệnh nhảy có điều kiện thì thao tác sẽ là: if (A==B) PC = ALUOut
ERRNếu là lệnh R-type thì thao tác được thực hiện sẽ là ALUOut = A op B, trong đó op là phép toán cụ thể của
lệnh
ERRNếu là lệnh nhảy không điều kiện thì thao tác sẽ là PC = PC[31-28] || (IR[25-0] < < 2), trong đó phép toán || là
phép toán nối 2 dãy bit với nhau
ERRNếu là lệnh beq thì thao tác được thực hiện sẽ là: ALUOut = A + sign-extend(IR[15-0])
Question 25 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out
of 1.00
Answer: 0
54.169.199.103/mod/quiz/review.php?attempt=1203&cmid=382 6/8
11/29/2019 Bài kiểm tra Chương 3 +4
Question 26 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Correct
Mark 1.00 out
of 1.00 Select one:
ERRPhần op xác định lệnh cụ thể nào sẽ được thực thi
ERRĐể cấu trúc ALU phù hợp với lệnh I-format ở dưới thì sẽ cần thay đổi: kích thước của thanh ghi từ 8 lên thành
32, số lượng thanh ghi từ 4 thành 32, kích thước của toán hạng Operand1, Operand2 và Destination từ 4 thành 5
ERRLệnh beq là thuộc loại I-format
ERRPhần offset dùng để chứa hằng số
Question 27 Ý nào sau đây là sai liên quan đến lệnh Assembly: ja label, trong đó label là một nhãn
Incorrect
Mark 0.00 out Select one:
of 1.00 Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s>d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên không dấu
Lệnh sẽ nhảy đến label nếu s < d trong đó s và d là tham số của lệnh cmp s,d
Question 28 Biết movslq s, d là lệnh thực hiện phép mở rộng dấu (hay chuyển từ kiểu int sang kiểu long) với s là một tham số kiểu
Correct int và d là một thanh ghi mục đích chung 64 bit kiểu long. Ý nào sau đây là đúng về đoạn mã Assembly sau tính toán
Mark 1.00 out biểu thức c=a+b; trong đó các biến được khai báo như sau: int a=8; float c; long b=20;
of 1.00 movslq a, %rax
add b, %rax
cvttsi2ssq %rax, c
Select one:
Sai ở lệnh add b, %rax
Sai ở lệnh cvttsi2ssq %rax, c
Đoạn mã là chính xác
Sai ở lệnh movslq a, %rax
Question 29 Biết movzbq s, d là lệnh thực hiện phép chuyển từ kiểu unsigned int sang kiểu unsigned long) với s là một tham số
Correct kiểu unsigned int và d là một thanh ghi mục đích chung 64 bit kiểu unsigned long. Ý nào sau đây là đúng về đoạn mã
Mark 1.00 out Assembly sau tính toán biểu thức c=a+b; trong đó các biến được khai báo như sau: unsigned int a=8; float c; unsigned
of 1.00 long b=20;
movzbq a, %rax
add b, %rax
cvttsi2ssq %rax, c
Select one:
Đoạn mã là chính xác
Sai ở lệnh add b, %rax
Sai ở lệnh cvttsi2ssq %rax, c
54.169.199.103/mod/quiz/review.php?attempt=1203&cmid=382 7/8
11/29/2019 Bài kiểm tra Chương 3 +4
54.169.199.103/mod/quiz/review.php?attempt=1203&cmid=382 8/8
29/11/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Ý nào sau đây là sai về lệnh jz label, trong đó label là một nhãn
Incorrect
Question 2 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Not answered shamt của lệnh, ví dụ 6?
Marked out of
1.00
Answer:
ERRLệnh loại J-format chỉ có một lệnh duy nhất là lệnh nhảy không điều kiện j (jump)
Question 4 Trong bước truy cập bộ nhớ MEM của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRNếu là lệnh R-type thì thao tác được thực hiện sẽ là Reg[IR[15-11]] = ALUOut, trong đó ALUOut là kết quả của
bước thứ 2 giải mã lệnh ID
ERRNếu là lệnh beq thì thao tác được thực hiện là if (A==B) PC = ALUOut
54.169.199.103/mod/quiz/review.php?attempt=1208&cmid=382 1/10
29/11/2019 Bài kiểm tra Chương 3 +4
Question 5 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Incorrect thanh ghi), xác định ý nào sau đây là sai?
Mark 0.00 out of
1.00 Select one:
ERRBước 3, trừ lệnh J-format, tất cả đều sử dụng bộ xử lý ALU
Question 6 Trong bước truy cập bộ nhớ MEM của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh đọc từ bộ nhớ thì thao tác thực hiện sẽ là: MDR = Memory[ALUOut]
ERRNếu là lệnh R-type thì thao tác được thực hiện sẽ là Reg[IR[15-11]] = ALUOut, trong đó ALUOut là kết quả của
bước thứ 2 giải mã lệnh ID
Question 7 Ý nào sau đây là sai đối với lệnh mul %ebx
Correct
Question 8 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rd của
Not answered lệnh, ví dụ 6?
Marked out of
1.00
Answer:
Giá trị chứa trong %eax bắt buộc phải là số không dấu
54.169.199.103/mod/quiz/review.php?attempt=1208&cmid=382 2/10
29/11/2019 Bài kiểm tra Chương 3 +4
Question 10 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Correct if(eax==1) eax=ebx+1;
Mark 1.00 out of else if (eax==2) ebx=eax+ecx+2;
1.00 else if (eax==3) ebx=eax+ecx+3;
biết các thanh ghi đang chứa các số không dấu.
cmp $1, %eax
jne L1
jmp endif
L1:
jne L2
jmp endif
L2:
jne endif
endif:
Select one:
Sai ở lệnh jne L2
54.169.199.103/mod/quiz/review.php?attempt=1208&cmid=382 3/10
29/11/2019 Bài kiểm tra Chương 3 +4
Question 11 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh tham chiếu bộ nhớ thì thao tác được thực hiện sẽ là: ALUOut = A + sign-extend(IR[15-0])
ERRNếu là lệnh nhảy có điều kiện thì thao tác sẽ là: if (A==B) PC = ALUOut
ERRNếu là lệnh add thì thao tác được thực hiện sẽ là ALUOut = A + B
Question 12 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ 3 ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là mỗi ô nhớ có kích thước 4 byte
ERRThao tác thứ hai B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
Question 13 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Incorrect thanh ghi), xác định ý nào sau đây là sai?
Mark 0.00 out of
1.00 Select one:
ERRBước 3, trừ lệnh J-format, tất cả đều sử dụng bộ xử lý ALU
Question 14 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại I-format, xác định thanh ghi rt của
Not answered lệnh, ví dụ 6?
Marked out of
1.00
Answer:
Question 15 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Incorrect
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
ERRBước 5 là ghi kết quả vào thanh ghi (WB), có nhiều lệnh có bước 5
Question 16 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh nhảy không điều kiện thì thao tác sẽ là PC = PC[31-28] || (IR[25-0] < < 2), trong đó phép toán || là
phép toán OR
ERRNếu là lệnh tham chiếu bộ nhớ thì thao tác được thực hiện sẽ là: ALUOut = A + sign-extend(IR[15-0])
ERRNếu là lệnh add thì thao tác được thực hiện sẽ là ALUOut = A + B
54.169.199.103/mod/quiz/review.php?attempt=1208&cmid=382 4/10
29/11/2019 Bài kiểm tra Chương 3 +4
Question 17 Cho lệnh MIPS and $t1, $t2, $t3, xác định ý nào sau đây là sai?
Correct
ERRLệnh này thực hiện phép toán $t1=$t2 AND $t3, trong đó AND là phép toán AND bit
54.169.199.103/mod/quiz/review.php?attempt=1208&cmid=382 5/10
29/11/2019 Bài kiểm tra Chương 3 +4
Question 18 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Correct if(eax==1) eax=ebx+1;
Mark 1.00 out of else if (eax==2) ebx=eax+ecx+2;
1.00 else if (eax==3) ebx=eax+ecx+3;
biết các thanh ghi đang chứa các số không dấu.
if: cmp $1, %eax
jne L1
jmp endif
L1:
jge L2
jmp endif
L2:
jne endif
endif:
Select one:
Sai ở dòng endif
54.169.199.103/mod/quiz/review.php?attempt=1208&cmid=382 6/10
29/11/2019 Bài kiểm tra Chương 3 +4
Question 19 Ý nào sau đây là sai liên quan đến lệnh Assembly div %bx
Incorrect
Đây là phép chia 2 số nguyên không dấu, số chia có kích thước 16 bit
Question 20 Cho lệnh MIPS beq $t1, $t2, 789, xác định ý nào sau đây là sai?
Incorrect
ERR789 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 789 lệnh hướng về phía cuối
chương trình
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
Question 21 Ý nào sau đây là sai liên quan đến lệnh Assembly mov val, %eax, trong đó val được khai báo như sau val: .int 10
Correct
Lệnh này gán giá trị của val vào thanh ghi %eax
Đây là lệnh gán địa chỉ của biến val vào thanh ghi %eax
Question 22 Biết lệnh MIPS sau 00000010001100100100000000100000 thuộc loại R-format, ý nào sau đây là sai?
Correct
54.169.199.103/mod/quiz/review.php?attempt=1208&cmid=382 7/10
29/11/2019 Bài kiểm tra Chương 3 +4
Question 23 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C if(eax>ebx && eax>ecx) eax=ebx+ecx; else
Incorrect ebx=eax+ecx; biết các thanh ghi đang chứa các số không dấu
Mark 0.00 out of cmp %ebx, %eax
1.00
ja else
jbe else
jmp endif
else:
endif:
Select one:
Chương trình hoàn toàn đúng
Ví dụ một lệnh là cvttsd2si %xmm0, %eax trong đó %xmm0 đang chứa một số kiểu double
Question 25 Cho lệnh MIPS or $t1, $t2, $t3, xác định ý nào sau đây là sai?
Incorrect
54.169.199.103/mod/quiz/review.php?attempt=1208&cmid=382 8/10
29/11/2019 Bài kiểm tra Chương 3 +4
Question 26 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Incorrect thanh ghi), xác định ý nào sau đây là sai?
Mark 0.00 out of
1.00 Select one:
ERRBước 1 không sử dụng bất kỳ đơn vị chính nào
Question 27 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Incorrect
Select one:
a. Lệnh beq là thuộc loại I-format
b. Để cấu trúc ALU phù hợp với lệnh I-format ở dưới thì sẽ cần thay đổi: kích thước của thanh ghi từ 8 lên thành 32,
số lượng thanh ghi từ 4 thành 32, kích thước của toán hạng Operand1, Operand2 và Destination từ 4 thành 5
d. Phần offset dùng để chứa hằng số, nó sẽ được truyền sang đường màu đỏ từ Operand2
Question 28 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh beq thì thao tác được thực hiện là if (A==B) PC = ALUOut
ERRNếu là lệnh đọc từ bộ nhớ thì thao tác thực hiện sẽ là: MDR = Memory[ALUOut]
ERRThao tác được thực hiện là: Reg[IR[20-16]]= MDR, trong đó MDR là thanh ghi lưu trữ kết quả tạm thời
54.169.199.103/mod/quiz/review.php?attempt=1208&cmid=382 9/10
29/11/2019 Bài kiểm tra Chương 3 +4
Lệnh này thao tác trên các thanh ghi xmm, không thao tác được với thanh ghi chứa số nguyên như %eax
Tham số s có thể là một thanh ghi xmm hoặc một biến kiểu double
Question 30 Cho lệnh MIPS beq $t1, $t2, -199, xác định ý nào sau đây là sai?
Correct
ERR-199 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 199 lệnh hướng về phía đầu
chương trình
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
54.169.199.103/mod/quiz/review.php?attempt=1208&cmid=382 10/10
29/11/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 2 Cho lệnh MIPS beq $t1, $t2, -199, xác định ý nào sau đây là sai?
Correct
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
ERR-199 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 199 lệnh hướng về phía đầu
chương trình
Question 3 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThác tác thứ 2 nhằm thực hiện một cấu trúc ngầm định là cấu trúc tuần tự
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
ERRThanh ghi con trỏ lệnh chỉ được cập nhật duy nhất ở bước này
Question 4 Ý nào sau đây là sai liên quan đến lệnh Assembly div %ebx
Incorrect
Đây là phép chia 2 số nguyên không dấu, số chia có kích thước gấp 2 lần số chia
54.169.199.103/mod/quiz/review.php?attempt=1191&cmid=382 1/7
29/11/2019 Bài kiểm tra Chương 3 +4
Question 5 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại I-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 4
Question 6 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Incorrect chuyển đổi số 0000 0001 1010 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 0.00 out of
1.00
Answer: 01AD
Question 7 Ý nào sau đây là sai về giải pháp cài đặt CPU đa chu kỳ
Incorrect
ERRDữ liệu sau khi thực hiện xong các thao tác tại từng bước không cần lưu lại
ERRCác đơn vị tính toán chính (như ALU) sẽ được chia sẻ giữa các thao tác trong các chu kỳ
ERRCác bước khác nhau được thực hiện trong khoảng thời gian như nhau
Đây là lệnh tăng giá trị của thanh ghi %eax lên 1 đơn vị
Giá trị chứa trong %eax bắt buộc phải là số không dấu
Question 10 Ý nào sau đây là sai liên quan đến lệnh Assembly mov arr(,%edx, 4),%ebx, trong đó biến arr được khai báo như sau arr: .int
Incorrect 34,3,12,4,3,5
Mark 0.00 out of
1.00 Select one:
Số 4 trong lệnh là xác định vị trí của phần tử mảng
Đây là lệnh gán giá trị của một phần tử của mảng arr vào thanh ghi ebx
54.169.199.103/mod/quiz/review.php?attempt=1191&cmid=382 2/7
29/11/2019 Bài kiểm tra Chương 3 +4
Question 11 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại I-format, xác định giá trị của phần
Correct offset của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 12186
Question 12 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
ERRBước 4 truy cập bộ nhớ (đối với lệnh đọc/ghi dữ liệu từ RAM) hoặc thanh ghi (đối với lệnh R-type) viết tắt là MEM
Question 13 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
Question 14 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh thuộc kiểu R-type
Question 15 Biết lệnh MIPS sau 00000010001100100100000000100000 thuộc loại R-format, ý nào sau đây là sai?
Correct
Question 16 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 29
54.169.199.103/mod/quiz/review.php?attempt=1191&cmid=382 3/7
29/11/2019 Bài kiểm tra Chương 3 +4
Question 17 Ý nào sau đây là sai liên quan đến lệnh Assembly: ja label, trong đó label là một nhãn
Incorrect
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s>d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên không dấu
Question 18 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại J-format, xác định giá trị của phần
Incorrect Address của lệnh trong hệ 10, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 15256
Question 19 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Incorrect
ERRPhần offset dùng để chứa hằng số, nó sẽ được truyền sang đường màu đỏ từ Operand2
Question 20 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU, nó có
thể gây ra lỗi khi lệnh đang xử lý là lệnh nhảy
ERRThác tác thứ 2 nhằm thực hiện một cấu trúc ngầm định là cấu trúc tuần tự
ERRTải lệnh làm nhiệm vụ đọc một lệnh từ bộ nhớ vào một thanh ghi trong CPU để phục vụ quá trình xử lý ở các
bước tiếp theo
Question 21 Biết movslq s, d là lệnh thực hiện phép mở rộng dấu (hay chuyển từ kiểu int sang kiểu long) với s là một tham số kiểu int
Incorrect và d là một thanh ghi mục đích chung 64 bit kiểu long. Ý nào sau đây là đúng về đoạn mã Assembly sau tính toán biểu
Mark 0.00 out of thức c=a+b; trong đó các biến được khai báo như sau: int a=8; float c; long b=20;
1.00
movslq a, %rax
add b, %rax
cvttsi2ssq %rax, c
Select one:
Đoạn mã là chính xác
54.169.199.103/mod/quiz/review.php?attempt=1191&cmid=382 4/7
29/11/2019 Bài kiểm tra Chương 3 +4
Question 22 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện phép toán a=c*b+25; trong đó các biến được khai báo
Correct như sau float a; double b; float c=1.8;
Mark 1.00 out of movsd b, %xmm0
1.00
mulss c, %xmm0
mov $25,%eax
cvtsi2ss %eax,%xmm1
addss %xmm1,%xmm0
movss %xmm0, a
Select one:
Có thể dùng lệnh movss để gán trực tiếp hằng số 25 vào thanh ghi %xmm1
Lệnh mulss c, %xmm0 là sai vì cần gán c vào một thanh ghi xmm
Thiếu lệnh chuyển đổi kiểu dữ liệu từ double sang float sau khi gán cho %xmm0 gía trị của b
Question 23 Đâu không phải là tên thanh ghi trong kiến trúc CPU của Intel?
Incorrect
MMX0
RAX
AH
Question 24 Ý nào sau đây là sai liên quan đến lệnh Assembly: jo label, trong đó label là một nhãn
Correct
Cần thực hiện một lệnh có tác động đến cờ OF, ví dụ lệnh add
Nhãn có địa chỉ trùng với lệnh đầu tiên ngay sau nó
Question 25 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là mỗi ô nhớ có kích thước 4 byte
ERRThao tác đầu tiên A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRThao tác thứ hai B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
54.169.199.103/mod/quiz/review.php?attempt=1191&cmid=382 5/7
29/11/2019 Bài kiểm tra Chương 3 +4
Question 26 Cho cấu trúc của lệnh J-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
Select one:
a. Đây là lệnh nhảy không điều kiện
c. Phần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo theo đơn vị là lệnh
Question 27 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại I-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 8
Question 28 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính biểu thức c=10-(a[3]+a[2]+a[1]); trong đó các biến được khai
Incorrect báo như sau int c, a[4]; và giả sử mảng a đã được gán giá trị.
Mark 0.00 out of mov $3, %edx
1.00
dec %edx
dec %edx
movsd %eax, c
Select one:
Chương trình hoàn toàn đúng
54.169.199.103/mod/quiz/review.php?attempt=1191&cmid=382 6/7
29/11/2019 Bài kiểm tra Chương 3 +4
Question 30 Ý nào sau đây là sai về giải pháp cài đặt CPU đa chu kỳ
Correct
ERRCác đơn vị tính toán chính (như ALU) sẽ được chia sẻ giữa các thao tác trong các chu kỳ
ERRThao tác trong mỗi chu kỳ chỉ được phép sử dụng tối đa 1 đơn vị tính toán chính (ví dụ như ALU) để chúng ta
không phải nhân bản các đơn vị tính toán do đó tiết kiệm chi phí cũng như giảm độ phức tạp của mạch
ERRDữ liệu sau khi thực hiện xong các thao tác tại từng bước không cần lưu lại
54.169.199.103/mod/quiz/review.php?attempt=1191&cmid=382 7/7
28/11/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Ý nào sau đây là đúng liên quan đến lệnh đoạn mã Assembly thực hiện lệnh if(%eax>%ebx) %ecx=1; else %ecx=2; biết
Correct %eax, %ebx đang chứa các số nguyên không dấu
Mark 1.00 out of cmp %eax, %ebx
1.00
ja else
jmp endif
else:
endif:
Select one:
Sai ở lệnh ja else
Sai ở lệnh cmp, cần đảo vị trí của 2 toán hạng cho nhau
Question 2 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThác tác thứ 2 nhằm thực hiện một cấu trúc ngầm định là cấu trúc tuần tự
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
ERRThanh ghi con trỏ lệnh chỉ được cập nhật duy nhất ở bước này
54.169.199.103/mod/quiz/review.php?attempt=1201&cmid=382 1/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 3 Biết lệnh MIPS sau 00000010001100100100000000100000 thuộc loại R-format, ý nào sau đây là sai?
Correct
Question 4 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
ERRBước 4 truy cập bộ nhớ (đối với lệnh đọc/ghi dữ liệu từ RAM) hoặc thanh ghi (đối với lệnh R-type) viết tắt là MEM
Question 5 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct funct của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 0
Question 6 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct funct của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 24
Question 7 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại I-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 10
Question 8 Cho cấu trúc của lệnh R-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
ERRKích thước phần địa chỉ của các thanh ghi là 5 bits, suy ra tổng số lượng thanh ghi trong kiến trúc MIPS là 32
ERRLệnh này sẽ tự động tải giá trị của các toán hạng vào các thanh ghi trước khi thực hiện lệnh cụ thể
ERRKết hợp phần op, shamt và funct sẽ xác định lệnh cụ thể nào sẽ được thực thi
Question 9 Ý nào sau đây là sai liên quan đến khai báo sau var1: .BYTE ‘A’
Correct
Sau khi khai báo biến thì đồng thời khởi tạo giá trị cho nó
54.169.199.103/mod/quiz/review.php?attempt=1201&cmid=382 2/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 10 Ý nào sau đây là sai liên quan đến lệnh Assembly: jnc label, trong đó label là một nhãn
Incorrect
Lệnh này có thể dùng kết hợp với một lệnh nào đó có ảnh hưởng đến cờ CF để tạo thành cấu trúc rẽ nhánh
Question 11 Đâu không phải là tên thanh ghi trong kiến trúc CPU của Intel?
Incorrect
AL
XMM16
MMX0
Question 12 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 0111 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 0000 0000 0000 0000 0111 1001 1110 1101
Question 13 Trong bước 3 của lệnh j (jump) thực hiện thao tác PC = PC[31-28] || (IR[25-0] < < 2), ý nào sau đây là sai?
Correct
ERRGiả sử IR[25-0]=00 0000 0000 1010 1100 0101 1111, và PC=0001 0000 1111 1001 1100 0111 0111 1000 thì PC =
PC[31-28] || (IR[25-0] < < 2)= 0000 0000 0000 0010 1011 0001 0111 1100
ERRPhép toán dịch trái ( < <) là cần thiết vì địa chỉ chứa trong IR[25-0] là địa chỉ tính theo đơn vị lệnh, cần chuyển ra
đơn vị là byte thì cần nhân với 4
ERRGiả sử IR[25-0]=00 0000 0000 1010 1100 0101 1111, và PC=0001 0000 1111 1001 1100 0111 0111 1000 thì PC =
PC[31-28] || (IR[25-0] < < 2)= 0001 0000 0000 0010 1011 0001 0111 1100
54.169.199.103/mod/quiz/review.php?attempt=1201&cmid=382 3/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 15 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Incorrect
switch(eax){
Mark 0.00 out of
1.00
case 1: eax=ebx+1; break;
case 3: ebx=eax+ecx+3;
jne L1
jmp endif
L1:
jne L2
jmp endif
L2:
jne endif
endif:
54.169.199.103/mod/quiz/review.php?attempt=1201&cmid=382 4/8
28/11/2019 Bài kiểm tra Chương 3 +4
Select one:
Chương trình hoàn toàn đúng
s có thể là một thanh ghi xmm hoặc một biến kiểu float
Ví dụ một lệnh là addss $5, %xmm0 trong đó %xmm0 đang chứa một số kiểu float
Question 17 Ý nào sau đây là sai liên quan đến lệnh Assembly: jnb label, trong đó label là một nhãn
Correct
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên không dấu
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
54.169.199.103/mod/quiz/review.php?attempt=1201&cmid=382 5/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 18 Ý nào sau đây đúng về đoạn mã Assembly thực hiện lệnh C if(a!=0) x=-b/a; trong đó các biến được khai báo như sau:
Incorrect double a=19; double b=39,x;
Mark 0.00 out of xorps %xmm1, %xmm1
1.00
movsd a, %xmm0
ucomisd %xmm0,%xmm1
je endif
mulsd b, %xmm1
movsd %xmm1, x
endif:
Select one:
Sai ở lệnh mov -1, %eax
Question 19 Ý nào sau đây là đúng về đoạn mã Assembly tính toán biểu thức a=b+c; trong đó các biến được khai báo như sau:
Incorrect unsigned int a; unsigned int c=-25; unsigned long b=283;
Mark 0.00 out of mov b, %rax
1.00
add c, %eax
mov %eax, a
Select one:
Đoạn mã là chính xác
54.169.199.103/mod/quiz/review.php?attempt=1201&cmid=382 6/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 20 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh tham chiếu bộ nhớ thì thao tác được thực hiện sẽ là: ALUOut = A + sign-extend(IR[15-0])
ERRNếu là lệnh nhảy có điều kiện thì thao tác sẽ là: if (A==B) PC = ALUOut
ERRNếu là lệnh nhảy không điều kiện thì thao tác sẽ là PC = PC[31-28] || (IR[25-0] < < 2), trong đó phép toán || là
phép toán OR
Question 21 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
Question 22 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 9
Question 23 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Incorrect
ERRĐể cấu trúc ALU phù hợp với lệnh I-format ở dưới thì sẽ cần thay đổi: kích thước của thanh ghi từ 8 lên thành 32,
số lượng thanh ghi từ 4 thành 32, kích thước của toán hạng Operand1, Operand2 và Destination từ 4 thành 5
Question 24 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rd của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 5
Question 25 Cho lệnh MIPS and $t1, $t2, $t3, xác định ý nào sau đây là sai?
Incorrect
ERRLệnh này thực hiện phép toán $t1=$t2 AND $t3, trong đó AND là phép toán AND bit
54.169.199.103/mod/quiz/review.php?attempt=1201&cmid=382 7/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 26 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
ERRTải lệnh làm nhiệm vụ đọc một lệnh từ đĩa cứng vào một thanh ghi trong CPU để phục vụ quá trình xử lý ở các
bước tiếp theo
Question 27 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác đầu tiên A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRTất cả kết quả của 3 thao tác đều được dùng trong các bước tiếp theo
ERRThao tác thứ 3 ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
Question 28 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại I-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 10
Question 29 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước đầu tiên là tải lệnh (IF), đưa lệnh vào thanh ghi lệnh của CPU để chuẩn bị cho các bước tiếp theo, đồng thời
chuyển con trỏ lệnh đến lệnh kế tiếp
ERRBước 3 là thực thi, thực sự thực hiện thao tác chính của lệnh
Question 30 Cho cấu trúc của lệnh I-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Correct
ERRKích thước phần địa chỉ của các thanh ghi là 5 bits, suy ra tổng số lượng thanh ghi trong kiến trúc MIPS là 32
54.169.199.103/mod/quiz/review.php?attempt=1201&cmid=382 8/8
11/28/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại I-format, xác định giá trị của phần
Correct offset của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 12186
s có thể là một thanh ghi xmm hoặc một biến kiểu float
Question 3 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ hai B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác đầu tiên A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRThao tác thứ 3 ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
Question 4 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 30
Question 5 Ý nào sau đây là sai liên quan đến lệnh Assembly: je label, trong đó label là một nhãn
Incorrect
Lệnh này không thể dùng kết hợp với lệnh nào khác ngoài lệnh cmp
Lệnh sẽ nhảy đến label nếu giá trị của 2 số là bằng nhau
54.169.199.103/mod/quiz/review.php?attempt=1206&cmid=382 1/7
11/28/2019 Bài kiểm tra Chương 3 +4
Question 6 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Incorrect thanh ghi), xác định ý nào sau đây là sai?
Mark 0.00 out of
1.00 Select one:
ERRBước 1 không sử dụng bất kỳ đơn vị chính nào
Question 7 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại I-format, xác định giá trị của phần
Correct offset của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 36824
Question 8 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại R-format, xác định thanh ghi rd của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 31
Question 9 Biết lệnh MIPS sau 00000010001100100100000000100000 thuộc loại R-format, ý nào sau đây là sai?
Correct
Question 10 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Incorrect chuyển đổi số 1000 0001 1010 1100 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 0.00 out of
1.00
Answer: 0000 0110 1011 0000
Question 11 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh nhảy có điều kiện thì thao tác sẽ là: if (A==B) PC = ALUOut
ERRNếu là lệnh nhảy không điều kiện thì thao tác sẽ là PC = PC[31-28] || (IR[25-0] < < 2), trong đó phép toán || là
phép toán OR
ERRNếu là lệnh tham chiếu bộ nhớ thì thao tác được thực hiện sẽ là: ALUOut = A + sign-extend(IR[15-0])
54.169.199.103/mod/quiz/review.php?attempt=1206&cmid=382 2/7
11/28/2019 Bài kiểm tra Chương 3 +4
Ví dụ một lệnh là addss $5, %xmm0 trong đó %xmm0 đang chứa một số kiểu float
Question 13 Ý nào sau đây là sai liên quan đến lệnh Assembly: jge label, trong đó label là một nhãn
Incorrect
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên có dấu
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s<=d trong đó s và d là tham số của lệnh cmp s,d
Question 14 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Correct thanh ghi), xác định ý nào sau đây là sai?
Mark 1.00 out of
1.00 Select one:
ERRBước 1 không sử dụng bất kỳ đơn vị chính nào
Question 15 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRTải lệnh làm nhiệm vụ đọc một lệnh từ bộ nhớ vào một thanh ghi trong CPU để phục vụ quá trình xử lý ở các
bước tiếp theo
ERRThác tác thứ 2 nhằm thực hiện một cấu trúc ngầm định là cấu trúc tuần tự
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
Question 16 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
ERRBước 5 là ghi kết quả vào thanh ghi (WB), có nhiều lệnh có bước 5
Question 17 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 18
54.169.199.103/mod/quiz/review.php?attempt=1206&cmid=382 3/7
11/28/2019 Bài kiểm tra Chương 3 +4
Question 19 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện thủ tục C
Incorrect
void f1(double *dp, int a, float *fp){
Mark 0.00 out of
1.00
*dp=(double) a*(*fp);
f1:
mov fp,%eax
cvtsi2sd a,%xmm1
ret
Select one:
Sai ở lệnh mov fp,%eax
Question 20 Trong bước 3 của lệnh j (jump) thực hiện thao tác PC = PC[31-28] || (IR[25-0] < < 2), ý nào sau đây là sai?
Incorrect
ERRGiả sử IR[25-0]=00 0000 0000 1010 1100 0101 1111, và PC=0001 0000 1111 1001 1100 0111 0111 1000 thì PC =
PC[31-28] || (IR[25-0] < < 2)= 0001 0000 0000 0010 1011 0001 0111 1100
ERRGiả sử IR[25-0]=00 0000 0000 1010 1100 0101 1111, và PC=0001 0000 1111 1001 1100 0111 0111 1000 thì PC =
PC[31-28] || (IR[25-0] < < 2)= 0000 0000 0000 0010 1011 0001 0111 1100
54.169.199.103/mod/quiz/review.php?attempt=1206&cmid=382 4/7
11/28/2019 Bài kiểm tra Chương 3 +4
Giá trị của cờ dấu SF và cờ zero ZF được cập nhật sau khi lệnh thực hiện
Sau khi thực hiện, giá trị của một số cờ trong thanh ghi trạng thái bị thay đổi
Sau khi thực hiện giá trị của %al và %bl bị thay đổi
Question 22 Ý nào sau đây là đúng liên quan đến lệnh đoạn mã Assembly thực hiện lệnh
Correct
%ecx=n;
Mark 1.00 out of
1.00
do {
%edx +=2;
%ecx--;
}while (%ecx > 0 ); biết %ecx đang chứa các số nguyên không dấu và n là một biến kiểu unsigned int lớn
hơn 0
mov n, %ecx
do:
add $2,%edx
loop for
Select one:
Thiếu lệnh so sánh %ecx với 0 để xác định nó có bằng 0 trước vòng lặp mới
Đây là lệnh lấy giá trị của số nhỏ nhất trong 2 số kiểu float
Ví dụ một lệnh là minss m, %xmm0 trong đó m và %xmm0 đang chứa một số kiểu double
54.169.199.103/mod/quiz/review.php?attempt=1206&cmid=382 5/7
11/28/2019 Bài kiểm tra Chương 3 +4
Question 24 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Correct if(eax==1) eax=ebx+1;
Mark 1.00 out of else if (eax==2) ebx=eax+ecx+2;
1.00 else if (eax==3) ebx=eax+ecx+3;
biết các thanh ghi đang chứa các số không dấu.
if: cmp $1, %eax
jne L1
jmp endif
L1:
jge L2
jmp endif
L2:
jne endif
endif:
Select one:
Sai ở dòng endif
54.169.199.103/mod/quiz/review.php?attempt=1206&cmid=382 6/7
11/28/2019 Bài kiểm tra Chương 3 +4
Question 25 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Incorrect chuyển đổi số 0111 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 0.00 out of
1.00
Answer: 1110 0111 1011 0100
Question 26 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
Question 27 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước 3 là thực thi, thực sự thực hiện thao tác chính của lệnh
ERRBước đầu tiên là tải lệnh (IF), đưa lệnh vào thanh ghi lệnh của CPU để chuẩn bị cho các bước tiếp theo, đồng thời
chuyển con trỏ lệnh đến lệnh kế tiếp
Question 28 Ý nào sau đây là sai liên quan đến lệnh Assembly mul %bl
Incorrect
Question 29 Xác định ý nào sau là sai về lệnh j (jump) trong kiến trúc MIPS?
Incorrect
ERRPhần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo (theo đơn vị byte)
Question 30 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 13
54.169.199.103/mod/quiz/review.php?attempt=1206&cmid=382 7/7
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Cho cấu trúc của lệnh R-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
Select one:
a. Kích thước phần địa chỉ của các thanh ghi là 5 bits, suy ra tổng số lượng thanh ghi trong kiến trúc MIPS là 32
b. Kết hợp phần op, shamt và funct sẽ xác định lệnh cụ thể nào sẽ được thực thi
c. Phần op là đủ thông tin để xác định lệnh cụ thể nào sẽ được thực thi
case 3: ebx=eax+ecx+3;
jne L1
jmp endif
L1:
jne L2
jmp endif
L2:
jne endif
endif:
Select one:
Sai ở dòng endif
Question 3 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
ERRThanh ghi con trỏ lệnh chỉ được cập nhật duy nhất ở bước này
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
Question 4 Ý nào sau đây là sai liên quan đến lệnh Assembly: jl label, trong đó label là một nhãn
Incorrect
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s>d trong đó s và d là tham số của lệnh cmp s,d
Question 5 Trong bước 3 của lệnh j (jump) thực hiện thao tác PC = PC[31-28] || (IR[25-0] < < 2), ý nào sau đây là sai?
Incorrect
ERRGiả sử IR[25-0]=00 0000 0000 1010 1100 0101 1111, và PC=0001 0000 1111 1001 1100 0111 0111 1000 thì PC =
PC[31-28] || (IR[25-0] < < 2)= 0000 0000 0000 0010 1011 0001 0111 1100
ERRGiả sử IR[25-0]=00 0000 0000 1010 1100 0101 1111, và PC=0001 0000 1111 1001 1100 0111 0111 1000 thì PC =
PC[31-28] || (IR[25-0] < < 2)= 0001 0000 0000 0010 1011 0001 0111 1100
Question 6 Cho lệnh MIPS sau: 00000000100010001111111101011001, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Incorrect lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 01000
Question 7 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 1100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 1111 1111 1111 1111 1100 1001 1110 1101
Question 8 Xác định ý nào sau là sai về lệnh j (jump) trong kiến trúc MIPS?
Incorrect
Question 9 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Correct thanh ghi), xác định ý nào sau đây là sai?
Mark 1.00 out of
1.00 Select one:
ERRBước 5 của lệnh J-format không sử dụng bất kỳ đơn vị nào
Question 10 Cho lệnh MIPS beq $t2, $t3,25, ý nào sau đây là sai?
Incorrect
ERRTheo cấu trúc lệnh I-format thì phần offset sẽ có giá trị là 25
ERRTheo cấu trúc lệnh I-format thì phần rt sẽ là địa chỉ của thanh ghi t2
ERRLệnh loại R-format là lệnh có các tham số được lưu trong các thanh ghi
cvtsi2ss %ebx,%xmm0
mulss b, %xmm0
mov 25,%eax
cvtsi2ss %eax,%xmm1
addss %xmm1,%xmm0
movss %xmm0, a
Select one:
Lệnh mulss b, %xmm0 là sai vì cần gán c vào một thanh ghi xmm
Có thể dùng lệnh movss để gán trực tiếp hằng số 25 vào thanh ghi %xmm1
Question 13 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện phép toán a=(float)b+(float)c; trong đó các biến được
Incorrect khai báo như sau float a; double b; int c;
Mark 0.00 out of movsd b, %xmm0
1.00
cvtsd2ss %xmm0,%xmm0
cvtsi2ss c,%xmm1
addss %xmm1,%xmm0
Select one:
Thiếu lệnh gán kết quả vào biến a
Lệnh cvtsi2ss c,%xmm1 là sai vì cần chuyển c vào một thanh ghi trước khi gọi lệnh này
Lệnh cvtsd2ss %xmm0,%xmm0 là sai vì 2 tham số của lệnh phải khác nhau
Question 14 Lệnh nào sau đây là sai liên quan đến lệnh Assembly jmp label, trong đó label là một nhãn
Incorrect
Lệnh này chỉ có tác dụng chuyển con trỏ lệnh (thanh ghi RIP) đến lệnh ở địa chỉ label
Lệnh có làm thay đổi giá trị của các cờ trong thanh ghi trạng thái
ERRNếu là lệnh beq thì thao tác được thực hiện là if (A==B) PC = ALUOut
ERRNếu là lệnh R-type thì thao tác được thực hiện sẽ là Reg[IR[15-11]] = ALUOut, trong đó ALUOut là kết quả của
bước thứ 2 giải mã lệnh ID
Question 16 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại I-format, xác định giá trị của phần
Incorrect offset của lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 1101101111011000
Question 17 Cho lệnh MIPS beq $t1, $t2, -199, xác định ý nào sau đây là sai?
Correct
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
ERR-199 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 199 lệnh hướng về phía đầu
chương trình
Question 18 Trong bước truy cập bộ nhớ MEM của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh đọc từ bộ nhớ thì thao tác thực hiện sẽ là: MDR = Memory[ALUOut]
ERRNếu là lệnh R-type thì thao tác được thực hiện sẽ là Reg[IR[15-11]] = ALUOut, trong đó ALUOut là kết quả của
bước thứ 2 giải mã lệnh ID
Question 19 Cho lệnh MIPS beq $t1, $t2, -199, xác định ý nào sau đây là sai?
Correct
ERR-199 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 199 lệnh hướng về phía đầu
chương trình
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
Question 20 Ý nào sau đây là sai liên quan đến lệnh Assembly: jae label, trong đó label là một nhãn
Incorrect
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên không dấu
Lệnh sẽ nhảy đến label nếu s<=d trong đó s và d là tham số của lệnh cmp s,d
Question 21 Ý nào sau đây là sai liên quan đến các phương pháp cài đặt bộ vi xử lý CPU?
Correct
ERRMột giải pháp là đơn chu kỳ, trong đó các lệnh khác nhau đều thực hiện trong khoảng thời gian như nhau là 1
chu kỳ
ERRGiải pháp đa chu kỳ chia lệnh thành các bước nhỏ hơn, và các bước nhỏ được thực hiện trong khoảng thời gian
bằng nhau là 1 chu kỳ
Question 22 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
Question 23 Ý nào sau đây là đúng về đoạn mã Assembly tính toán biểu thức a=*b+c; trong đó các biến được khai báo như sau:
Correct unsigned int a; unsigned int c=-25; unsigned long *b; và con trỏ b đã được gán địa chỉ của một biến kiểu unsigned long
Mark 1.00 out of có gán giá trị cụ thể.
1.00
mov b, %rax
add c, %eax
mov %eax, a
Select one:
Đoạn mã là chính xác
Question 24 Ý nào sau đây là sai về giải pháp cài đặt CPU đa chu kỳ
Incorrect
ERRCác đơn vị tính toán chính (như ALU) sẽ được chia sẻ giữa các thao tác trong các chu kỳ
ERRThao tác trong mỗi chu kỳ chỉ được phép sử dụng tối đa 1 đơn vị tính toán chính (ví dụ như ALU) để chúng ta
không phải nhân bản các đơn vị tính toán, và tiết kiệm chi phí
Question 25 Biết lệnh MIPS sau 00000010001100100100000000100000 thuộc loại R-format, ý nào sau đây là sai?
Correct
Question 26 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính tichs (%rax * %rbx) của của 2 số nguyên dương chứa trong
Incorrect %rax và %rbx, tuân theo giải thuật
Mark 0.00 out of %rcx=0;
1.00
while(%rbx>0) {
%rcx +=%rax;
%rbx--;
###
xor %rcx,%rcx
L1:
test $0,%rbx
jz found
add %rax,%rcx
dec %rbx
jmp L1
found:
Select one:
Sai ở lệnh jz found
Question 28 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 0000 0001 1010 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 0000 0000 0000 0000 0000 0001 1010 1101
Question 29 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước 5 là ghi kết quả vào thanh ghi (WB), có nhiều lệnh có bước 5
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
Question 30 Ý nào sau đây là sai liên quan đến lệnh Assembly: jnc label, trong đó label là một nhãn
Correct
Trước khi dùng lệnh này cần thực hiện một lệnh có ảnh hưởng đến CF trước
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rd của
Not answered lệnh trong hệ 10, ví dụ 6?
Marked out of
1.00
Answer:
Question 2 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có thao tác ALUOut = (PC + sign-extend(IR[15-0]) < < 2), ý nào
Incorrect sau đây là sai?
Mark 0.00 out of
1.00 Select one:
ERRGiả sử IR[15-0]=1010 1100 0101 1110 thì sign-extend(IR[15-0])= 0000 0000 0000 0000 1010 1100 0101 1110
ERRGiả sử IR[15-0]=0110 1100 0111 0110 thì sign-extend(IR[15-0])= 0000 0000 0000 0000 0110 1100 0111 0110
ERRGiả sử IR[15-0]=1110 1100 0111 0110 thì sign-extend(IR[15-0])= 1111 1111 1111 1111 1110 1100 0111 0110
Question 3 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Not answered chuyển đổi số 1100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Marked out of
1.00
Answer:
Question 4 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Incorrect
ERRPhần op kết hợp với shamt và funct xác định lệnh cụ thể nào sẽ được thực thi
Question 5 Ý nào sau đây là sai liên quan đến lệnh Assembly: jna label, trong đó label là một nhãn
Incorrect
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên không dấu
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
54.169.199.103/mod/quiz/review.php?attempt=1210&cmid=382 1/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 6 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
Question 7 Cho lệnh MIPS beq $t1, $t2, -199, xác định ý nào sau đây là sai?
Incorrect
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
ERR-199 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 199 lệnh hướng về phía đầu
chương trình
Question 8 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Not answered lệnh, ví dụ 6?
Marked out of
1.00
Answer:
Question 9 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh beq thì thao tác được thực hiện sẽ là: ALUOut = A + sign-extend(IR[15-0])
ERRNếu là lệnh R-type thì thao tác được thực hiện sẽ là ALUOut = A op B, trong đó op là phép toán cụ thể của lệnh
ERRNếu là lệnh nhảy không điều kiện thì thao tác sẽ là PC = PC[31-28] || (IR[25-0] < < 2), trong đó phép toán || là
phép toán nối 2 dãy bit với nhau
54.169.199.103/mod/quiz/review.php?attempt=1210&cmid=382 2/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 10 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Correct
switch(eax){
Mark 1.00 out of
1.00
case 1: eax=ebx+1; break;
case 3: ebx=eax+ecx+3;
jne L1
jmp endif
L1:
jne L2
jmp endif
L2:
jne endif
endif:
54.169.199.103/mod/quiz/review.php?attempt=1210&cmid=382 3/8
11/28/2019 Bài kiểm tra Chương 3 +4
Select one:
Chương trình hoàn toàn đúng
Question 12 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Incorrect thanh ghi), xác định ý nào sau đây là sai?
Mark 0.00 out of
1.00 Select one:
ERRBước 2 sử dụng bộ xử lý ALU
Question 13 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
ERRThanh ghi con trỏ lệnh chỉ được cập nhật duy nhất ở bước này
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
Question 14 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác được thực hiện là: Reg[IR[20-16]]= MDR, trong đó MDR là thanh ghi lưu trữ kết quả tạm thời
ERRNếu là lệnh beq thì thao tác được thực hiện là if (A==B) PC = ALUOut
ERRNếu là lệnh đọc từ bộ nhớ thì thao tác thực hiện sẽ là: MDR = Memory[ALUOut]
Question 15 Cho lệnh MIPS beq $t1, $t2, 789, xác định ý nào sau đây là sai?
Correct
ERR789 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 789 lệnh hướng về phía đầu
chương trình
54.169.199.103/mod/quiz/review.php?attempt=1210&cmid=382 4/8
11/28/2019 Bài kiểm tra Chương 3 +4
Ví dụ một lệnh là mulsd $5, %xmm0 trong đó %xmm0 đang chứa một số kiểu double
Question 17 Biết lệnh MIPS sau 00000010001100100100000000100000 thuộc loại R-format, ý nào sau đây là sai?
Incorrect
Question 18 Cho lệnh MIPS beq $t2, $t3,25, ý nào sau đây là sai?
Incorrect
ERRTheo cấu trúc lệnh I-format thì phần offset sẽ có giá trị là 25
Question 19 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Incorrect funct của lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 8
Question 20 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện phép toán a=(float)b+(float)c; trong đó các biến được
Incorrect khai báo như sau float a; double b; int c;
Mark 0.00 out of movsd b, %xmm0
1.00
cvtsd2ss %xmm0,%xmm0
cvtsi2ss c,%xmm1
addss %xmm1,%xmm0
Select one:
Lệnh cvtsd2ss %xmm0,%xmm0 là sai vì 2 tham số của lệnh phải khác nhau
Lệnh cvtsi2ss c,%xmm1 là sai vì cần chuyển c vào một thanh ghi trước khi gọi lệnh này
54.169.199.103/mod/quiz/review.php?attempt=1210&cmid=382 5/8
11/28/2019 Bài kiểm tra Chương 3 +4
Về bản chất là thực hiện phép trừ %bl-%al, sau đó các cờ liên quan được cập nhật
Chỉ có giá trị của cờ dấu SF và cờ zero ZF được cập nhật sau khi lệnh thực hiện
Question 22 Cho cấu trúc của lệnh J-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
ERRPhần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo theo đơn vị là lệnh
Question 23 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
Question 24 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại I-format, xác định thanh ghi rs của
Incorrect lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 8
54.169.199.103/mod/quiz/review.php?attempt=1210&cmid=382 6/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 25 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính biểu thức c=10-(a[3]+a[2]+a[1]); trong đó các biến được khai
Incorrect báo như sau int c, a[4]; và giả sử mảng a đã được gán giá trị.
Mark 0.00 out of mov $2, %edx
1.00
dec %edx
mov %eax, c
Select one:
Sai ở lệnh add a(,%edx,4), %eax
Question 26 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại I-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 25
Question 27 Ý nào sau đây là sai liên quan đến lệnh Assembly mul %rbx
Incorrect
Lệnh này sẽ cập nhật trạng thái một số cờ trong thanh ghi trạng thái giống như lệnh cmp
Question 29 Cho lệnh MIPS sau: 00000000100010001111111101011001, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Not answered lệnh, ví dụ 6?
Marked out of
1.00
Answer:
54.169.199.103/mod/quiz/review.php?attempt=1210&cmid=382 7/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 30 Ý nào sau đây là sai liên quan đến lệnh Assembly: jnle label, trong đó label là một nhãn
Incorrect
Lệnh sẽ nhảy đến label nếu s>d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên có dấu
54.169.199.103/mod/quiz/review.php?attempt=1210&cmid=382 8/8
28/11/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Cho cấu trúc của lệnh I-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Correct
Select one:
a. Phần op xác định lệnh cụ thể nào sẽ được thực thi
d. Kích thước phần địa chỉ của các thanh ghi là 5 bits, suy ra tổng số lượng thanh ghi trong kiến trúc MIPS là 32
Question 2 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThác tác thứ 2 của bước này có thể gây ra sai sót khi gặp lệnh nhảy
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
Question 3 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại R-format, xác định thanh ghi rd của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 31
Question 4 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRKhông thể gộp bước 4 và 5 lại vì nó vi phạm điều kiện tại mỗi bước chỉ sử dụng tối đa 1 đơn vị xử lý chính
54.169.199.103/mod/quiz/review.php?attempt=1197&cmid=382 1/9
28/11/2019 Bài kiểm tra Chương 3 +4
Question 5 Ý nào sau đây là chính xác về đoạn mã Assembly thực hiện lệnh C: if(%eax=%ebx) %edx=1;
Correct cmp %ebx, %eax
Mark 1.00 out of jne endif
1.00 mov 1, %edx
endif:
Select one:
Cần chuyển %eax sang bên trái và %ebx sang bên phải của lệnh cmp
Question 6 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Incorrect thanh ghi), xác định ý nào sau đây là sai?
Mark 0.00 out of
1.00 Select one:
ERRBước 4 của lệnh sw truy cập tập bộ nhớ trong
Question 7 Ý nào sau đây là sai liên quan đến lệnh Assembly mov arr(,%edx, 4),%ebx, trong đó biến arr được khai báo như sau arr: .int
Incorrect 34,3,12,4,3,5
Mark 0.00 out of
1.00 Select one:
Lệnh này tương đương với lệnh %ebx=arr[%edx]; trong C
Đây là lệnh gán giá trị của một phần tử của mảng arr vào thanh ghi ebx
54.169.199.103/mod/quiz/review.php?attempt=1197&cmid=382 2/9
28/11/2019 Bài kiểm tra Chương 3 +4
Question 8 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính biểu thức c=10-(a[3]+a[2]+a[1]); trong đó các biến được khai
Incorrect báo như sau int c, a[4]; và giả sử mảng a đã được gán giá trị.
Mark 0.00 out of mov $3, %edx
1.00
dec %edx
dec %edx
movsd %eax, c
Select one:
Chương trình hoàn toàn đúng
Question 9 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước 3 là thực thi, thực sự thực hiện thao tác chính của lệnh
ERRBước đầu tiên là tải lệnh (IF), đưa lệnh vào thanh ghi lệnh của CPU để chuẩn bị cho các bước tiếp theo, đồng thời
chuyển con trỏ lệnh đến lệnh kế tiếp
54.169.199.103/mod/quiz/review.php?attempt=1197&cmid=382 3/9
28/11/2019 Bài kiểm tra Chương 3 +4
Question 12 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Correct
ecx=ebx=1;
Mark 1.00 out of
1.00
for(eax=1; eax<n; eax++) {
edx=ecx;
ecx+=ebx;
ebx=edx;
biết các thanh ghi đang chứa các số không dấu, n được khai báo unsigned int n=23.
mov $1, %ebx
L1:
cmp n, %eax
jae endfor
mov %edx,%ebx
inc %eax
jmp L1
endfor:
Select one:
Sai ở lệnh jae endfor
54.169.199.103/mod/quiz/review.php?attempt=1197&cmid=382 4/9
28/11/2019 Bài kiểm tra Chương 3 +4
Question 13 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh thuộc kiểu R-type
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
Question 14 Ý nào sau đây là sai liên quan đến lệnh Assembly mul %bx
Incorrect
Toán hạng thứ nhất của phép nhân được lưu ở thanh ghi %ax
Question 15 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại J-format, xác định giá trị của phần
Correct Address của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 22673792
Question 16 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 30
54.169.199.103/mod/quiz/review.php?attempt=1197&cmid=382 5/9
28/11/2019 Bài kiểm tra Chương 3 +4
Question 17 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính phần nguyên của thương (%rax / %rbx) của của 2 số nguyên
Incorrect dương chứa trong %rax và %rbx, tuân theo giải thuật
Mark 0.00 out of %rcx=0;
1.00
while(%rax>%rbx) {
%rcx++;
%rax -= %rbx;
##
xor %rcx,%rcx
L1:
cmp %rbx,%rax
jb found
sub %rbx,%rax
inc %rcx
jmp L1
found:
Select one:
Nhãn found phải đặt là endwhile
L1 phải là while
Ví dụ một lệnh là divsd $5, %xmm0 trong đó %xmm0 đang chứa một số kiểu double
54.169.199.103/mod/quiz/review.php?attempt=1197&cmid=382 6/9
28/11/2019 Bài kiểm tra Chương 3 +4
Question 19 Ý nào sau đây là sai về giải pháp cài đặt CPU đa chu kỳ
Correct
ERRCác chu kỳ trong 1 lệnh là phụ thuộc nhau theo nghĩa chu kỳ sau sẽ mỗi chu kỳ sẽ thực hiện 1 công đoạn của
một việc chung
ERRThao tác trong mỗi chu kỳ chỉ được phép sử dụng tối đa 1 đơn vị tính toán chính (ví dụ như ALU) để chúng ta
không phải nhân bản các đơn vị tính toán do đó tiết kiệm chi phí cũng như giảm độ phức tạp của mạch
ERRCác bước khác nhau có thể thực hiện trong khoảng thời gian dài khác nhau
Question 20 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Incorrect lệnh trong hệ 10, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 17
Question 21 Cho cấu trúc của lệnh J-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
ERRPhần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo theo đơn vị là lệnh
Question 22 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Not answered chuyển đổi số 1110 1001 1110 1111 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Marked out of
1.00
Answer:
Question 23 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Incorrect lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 16
Question 24 Ý nào sau đây là sai liên quan đến khai báo .section text
Incorrect
Cần có một thủ tục chính giống như hàm main trong ngôn ngữ lập trình C
Đây là nơi khai báo tất cả các thủ tục của chương trình
Đây là khai báo một section của chương trình dùng để chứa dữ liệu
Question 25 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct funct của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 0
54.169.199.103/mod/quiz/review.php?attempt=1197&cmid=382 7/9
28/11/2019 Bài kiểm tra Chương 3 +4
Question 26 Ý nào sau đây là đúng về lệnh movsd arr(,%eax,8),%xmm1, trong đó biến arr được khai báo như sau arr: .double 3.1, 2.3,
Incorrect 3.4, 4.5, 5.6
Mark 0.00 out of
1.00 Select one:
Lệnh này gán giá trị của một số thực trong %xmm1 vào một phần tử của mảng arr
Lệnh này gán 1 phần tử của mảng số thực ở vị trí được lưu ở thanh ghi %eax vào thanh ghi %xmm1
Question 27 Cho cấu trúc của lệnh J-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
Select one:
a. Đây là lệnh nhảy không điều kiện
d. Phần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo theo đơn vị là lệnh
Question 28 Ý nào sau đây là sai về giải pháp cài đặt CPU đa chu kỳ
Correct
ERRCác đơn vị tính toán chính (như ALU) sẽ được chia sẻ giữa các thao tác trong các chu kỳ
ERRCác bước khác nhau có thể thực hiện trong khoảng thời gian dài khác nhau
ERRCác chu kỳ trong 1 lệnh là phụ thuộc nhau theo nghĩa chu kỳ sau sẽ mỗi chu kỳ sẽ thực hiện 1 công đoạn của
một việc chung
Question 29 Ý nào sau đây là sai liên quan đến các phương pháp cài đặt bộ vi xử lý CPU?
Correct
ERRGiải pháp đa chu kỳ chia lệnh thành các bước nhỏ hơn, và các bước nhỏ được thực hiện trong khoảng thời gian
bằng nhau là 1 chu kỳ
ERRGiải pháp đơn chu kỳ có nhược điểm là lệnh chạy nhanh sẽ lãng phí thời gian
Question 30 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ hai B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác thứ 3 ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
ERRThao tác đầu tiên A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất, trong mọi trường hợp
giá trị của A luôn được sử dụng ở một trong các bước sau này
54.169.199.103/mod/quiz/review.php?attempt=1197&cmid=382 8/9
28/11/2019 Bài kiểm tra Chương 3 +4
54.169.199.103/mod/quiz/review.php?attempt=1197&cmid=382 9/9
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại I-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 9
Question 2 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 13
Question 3 Cho cấu trúc của lệnh R-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Correct
ERRKích thước phần địa chỉ của các thanh ghi là 5 bits, suy ra tổng số lượng thanh ghi trong kiến trúc MIPS là 32
ERRKết hợp phần op, shamt và funct sẽ xác định lệnh cụ thể nào sẽ được thực thi
ERRPhần op là đủ thông tin để xác định lệnh cụ thể nào sẽ được thực thi
Question 4 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
Question 5 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct funct của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 26
Question 6 Ý nào sau đây là đúng liên quan đến lệnh đoạn mã Assembly thực hiện lệnh if(%eax>%ebx+2) %edx=2; biết %eax, %ebx
Incorrect đang chứa các số nguyên không dấu, chú ý sau khi thực hiện lệnh thì không được làm thay đổi giá trị của %ebx
Mark 0.00 out of mov %ebx, %ecx
1.00
jbe endif
mov 2, %edx
endif:
Select one:
Đoạn mã hoàn toàn chính xác
Cần tráo đổi vị trí của 2 tham số của lệnh cmp cho nhau
Question 7 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
ERRBước 5 là ghi kết quả vào thanh ghi (WB), có nhiều lệnh có bước 5
Question 8 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 4
Question 9 Cho cấu trúc của lệnh J-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
Select one:
a. Đây là lệnh nhảy có điều kiện
d. Phần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo theo đơn vị là lệnh
Question 10 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRNếu là lệnh tham chiếu bộ nhớ thì thao tác được thực hiện sẽ là: ALUOut = A + sign-extend(IR[15-0] < < 2)
ERRNếu là lệnh nhảy có điều kiện thì thao tác sẽ là: if (A==B) PC = ALUOut
ERRNếu là lệnh add thì thao tác được thực hiện sẽ là ALUOut = A + B
Question 11 Ý nào sau đây là sai liên quan đến lệnh Assembly mov arr(,%edx, 4),%ebx, trong đó biến arr được khai báo như sau arr: .int
Correct 34,3,12,4,3,5
Mark 1.00 out of
1.00 Select one:
arr là một mảng số nguyên kiểu int
Đây là lệnh gán giá trị của một phần tử của mảng arr vào thanh ghi ebx
Question 12 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại I-format, xác định giá trị của phần
Correct offset của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 63872
Question 13 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh nhảy không điều kiện
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
Question 14 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính tổng n số tự nhiên đầu tiên, trong đó n được khai báo
Incorrect unsigned int n; kết quả chứa ở thanh ghi %rax
Mark 0.00 out of xor %rcx, %rcx
1.00
mov n,%rcx
for:
loop for
Select one:
Sai ở lệnh xor %rcx, %rcx
Question 15 Cho lệnh MIPS beq $t1, $t2, 789, xác định ý nào sau đây là sai?
Correct
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
ERR789 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 789 lệnh hướng về phía cuối
chương trình
Question 16 Cho lệnh MIPS and $t1, $t2, $t3, xác định ý nào sau đây là sai?
Correct
s có thể là một thanh ghi xmm hoặc một biến kiểu float
Ví dụ một lệnh là addss $5, %xmm0 trong đó %xmm0 đang chứa một số kiểu float
Question 18 Ý nào sau đây là sai về lệnh divsd s,d
Incorrect
Ví dụ một lệnh là divsd $5, %xmm0 trong đó %xmm0 đang chứa một số kiểu double
Question 19 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 30
Question 20 Ý nào sau đây là đúng liên quan đến lệnh đoạn mã Assembly thực hiện lệnh C sau
Incorrect
while (%eax < 20) { %edx +=2; %eax++}
Mark 0.00 out of
1.00
biết %eax đang chứa các số nguyên không dấu
while:
jae endwhile
add $2,%edx
inc %eax
jmp while
endwhile:
Select one:
Lệnh cmp không cho phép so sánh trực tiếp với một hằng số
Cần tráo đổi vị trí của 2 tham số của lệnh cmp cho nhau
Question 21 Cho lệnh MIPS sau: 00000000100010001111111101011001, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 29
Question 22 Ý nào sau đây là sai liên quan đến lệnh Assembly: jg label, trong đó label là một nhãn
Incorrect
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên có dấu
Lệnh sẽ nhảy đến label nếu s>d trong đó s và d là tham số của lệnh cmp s,d
Question 23 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại J-format, xác định giá trị của phần
Incorrect Address của lệnh, ví dụ 6?
Mark 0.00 out of
1.00
Answer: 63872
Question 24 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rd của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 27
Ví dụ một lệnh là minsd $5, %xmm0 trong đó %xmm0 đang chứa một số kiểu double
Question 26 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 0
Question 27 Cho lệnh MIPS beq $t1, $t2, 789, xác định ý nào sau đây là sai?
Correct
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
ERR789 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 789 lệnh hướng về phía cuối
chương trình
Question 28 Cho cấu trúc của lệnh I-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
Select one:
a. Kích thước phần địa chỉ của các thanh ghi là 5 bits, suy ra tổng số lượng thanh ghi trong kiến trúc MIPS là 32
Question 29 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính tichs (%rax * %rbx) của của 2 số nguyên dương chứa trong
Correct %rax và %rbx, tuân theo giải thuật
Mark 1.00 out of %rcx=0;
1.00
while(%rbx>0) {
%rcx +=%rax;
%rbx--;
###
xor %rcx,%rcx
L1:
test $0,%rbx
jz found
add %rax,%rcx
dec %rbx
jmp L1
found:
Select one:
Chương trình hoàn toàn đúng
ecx=0;
L1:
cmp n,%ecx
jae endfor
inc %ecx
jmp L1
endfor:
Select one:
Sai ở lệnh jae endfor
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Cho cấu trúc của lệnh R-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Correct
Select one:
a. Lệnh này sẽ tự động tải giá trị của các toán hạng vào các thanh ghi trước khi thực hiện lệnh cụ thể
b. Kích thước phần địa chỉ của các thanh ghi là 5 bits, suy ra tổng số lượng thanh ghi trong kiến trúc MIPS là 32
d. Kết hợp phần op, shamt và funct sẽ xác định lệnh cụ thể nào sẽ được thực thi
ERRLệnh loại R-format là lệnh có các tham số được lưu trong các thanh ghi
ERRLệnh loại J-format chỉ có một lệnh duy nhất là lệnh nhảy không điều kiện j (jump)
Question 3 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại J-format, xác định giá trị của phần
Correct Address của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 19782616
54.169.199.103/mod/quiz/review.php?attempt=1219&cmid=382 1/7
11/28/2019 Bài kiểm tra Chương 3 +4
Question 4 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Correct
switch(eax){
Mark 1.00 out of
1.00
case 1: eax=ebx+1; break;
case 3: ebx=eax+ecx+3;
jne L1
jmp endif
L1:
jne L2
jmp endif
L2:
jne endif
endif:
54.169.199.103/mod/quiz/review.php?attempt=1219&cmid=382 2/7
11/28/2019 Bài kiểm tra Chương 3 +4
Select one:
Chương trình hoàn toàn đúng
Lệnh này sẽ cập nhật trạng thái một số cờ trong thanh ghi trạng thái giống như lệnh cmp
Question 6 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRKhông thể gộp bước 4 và 5 lại vì nó vi phạm điều kiện tại mỗi bước chỉ sử dụng tối đa 1 đơn vị xử lý chính, do nó
sử dụng bus dữ liệu để truy cập bộ nhớ và sử dụng đơn vị xử lý ALU
Question 7 Ý nào sau đây là sai liên quan đến lệnh Assembly mul %bl
Correct
Giá trị của toán hạng thứ nhất được lưu ở thanh ghi %al
Question 8 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRKhông thể gộp bước 4 và 5 lại vì nó vi phạm điều kiện tại mỗi bước chỉ sử dụng tối đa 1 đơn vị xử lý chính
Question 9 Ý nào sau đây là sai liên quan đến lệnh Assembly: jle label, trong đó label là một nhãn
Incorrect
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên có dấu
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
54.169.199.103/mod/quiz/review.php?attempt=1219&cmid=382 3/7
11/28/2019 Bài kiểm tra Chương 3 +4
Question 10 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 30
Question 11 Đâu không phải là tên thanh ghi trong kiến trúc CPU của Intel?
Incorrect
AH
RAX
XMM
Question 12 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Incorrect thanh ghi), xác định ý nào sau đây là sai?
Mark 0.00 out of
1.00 Select one:
ERRBước 2 sử dụng bộ xử lý ALU
Question 13 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh trong hệ 10, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 11
Question 14 Lệnh nào sau đây là sai liên quan đến lệnh Assembly jmp label, trong đó label là một nhãn
Correct
Lệnh có làm thay đổi giá trị của các cờ trong thanh ghi trạng thái
Question 15 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rd của
Correct lệnh trong hệ 10, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 7
Question 16 Cho lệnh MIPS sau: 00000101011010010011101110011000, biết rằng nó thuộc loại I-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 11
54.169.199.103/mod/quiz/review.php?attempt=1219&cmid=382 4/7
11/28/2019 Bài kiểm tra Chương 3 +4
Question 17 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
ERRBước 4 truy cập bộ nhớ (đối với lệnh đọc/ghi dữ liệu từ RAM) hoặc thanh ghi (đối với lệnh R-type) viết tắt là MEM
Question 18 Cho lệnh MIPS sau: 00000000100010001111111101011001, biết rằng nó thuộc loại R-format, xác định thanh ghi rd của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 31
Question 19 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại I-format, xác định giá trị của phần
Correct offset của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 56280
Question 20 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 0100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 0000 0000 0000 0000 0100 1001 1110 1101
Question 21 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 13
Question 22 Ý nào sau đây là sai liên quan đến lệnh Assembly: ja label, trong đó label là một nhãn
Incorrect
Lệnh sẽ nhảy đến label nếu s < d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên không dấu
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Question 23 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh beq thì thao tác được thực hiện là if (A==B) PC = ALUOut
ERRThao tác được thực hiện là: Reg[IR[20-16]]= MDR, trong đó MDR là thanh ghi lưu trữ kết quả tạm thời
54.169.199.103/mod/quiz/review.php?attempt=1219&cmid=382 5/7
11/28/2019 Bài kiểm tra Chương 3 +4
Question 24 Ý nào sau đây là sai về giải pháp cài đặt CPU đa chu kỳ
Correct
ERRCác bước khác nhau có thể thực hiện trong khoảng thời gian dài khác nhau
ERRCác chu kỳ trong 1 lệnh là phụ thuộc nhau theo nghĩa chu kỳ sau sẽ mỗi chu kỳ sẽ thực hiện 1 công đoạn của
một việc chung
ERRCác đơn vị tính toán chính (như ALU) sẽ được chia sẻ giữa các thao tác trong các chu kỳ
Question 26 Ý nào sau đây là sai liên quan đến lệnh Assembly: jnbe label, trong đó label là một nhãn
Incorrect
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, áp dụng với trường hợp lệnh cmp là so sánh 2 số nguyên không dấu
Question 28 Ý nào sau đây là sai liên quan đến lệnh Assembly: jg label, trong đó label là một nhãn
Incorrect
Lệnh sẽ nhảy đến label nếu s>d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
54.169.199.103/mod/quiz/review.php?attempt=1219&cmid=382 6/7
11/28/2019 Bài kiểm tra Chương 3 +4
Question 29 Cho cấu trúc của lệnh J-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Correct
Giá trị của %rbx bị thay đổi sau khi lệnh thực hiện
Sau khi thực hiện, giá trị của một số cờ trong thanh ghi trạng thái bị thay đổi
54.169.199.103/mod/quiz/review.php?attempt=1219&cmid=382 7/7
11/28/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Incorrect
ERRBước đầu tiên là tải lệnh (IF), đưa lệnh vào thanh ghi lệnh của CPU để chuẩn bị cho các bước tiếp theo, đồng thời
chuyển con trỏ lệnh đến lệnh kế tiếp
Question 2 Cho lệnh MIPS sau: 00000000100010001111111101011001, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 29
Question 3 Cho lệnh MIPS beq $t1, $t2, -199, xác định ý nào sau đây là sai?
Incorrect
ERRLệnh này cần 4 chu kỳ để thực hiện, bước thứ 4 là nhảy đến lệnh được rẽ nhánh
ERR-199 là địa chỉ tương đối của lệnh cần thực hiện tiếp theo, nó cách lệnh hiện tại 199 lệnh hướng về phía đầu
chương trình
Question 4 Cho lệnh MIPS and $t1, $t2, $t3, xác định ý nào sau đây là sai?
Correct
ERRLệnh này thực hiện phép toán $t1=$t2 AND $t3, trong đó AND là phép toán AND bit
54.169.199.103/mod/quiz/review.php?attempt=1222&cmid=382 1/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 5 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh nhảy có điều kiện thì thao tác sẽ là: if (A==B) PC = ALUOut
ERRNếu là lệnh tham chiếu bộ nhớ thì thao tác được thực hiện sẽ là: ALUOut = A + sign-extend(IR[15-0] < < 2)
ERRNếu là lệnh add thì thao tác được thực hiện sẽ là ALUOut = A + B
Question 6 Ý nào sau đây là sai liên quan đến lệnh Assembly: jae label, trong đó label là một nhãn
Incorrect
Lệnh sẽ nhảy đến label nếu s>=d trong đó s và d là tham số của lệnh cmp s,d
Đây là lệnh nhảy có điều kiện, thường được dùng kết hợp với lệnh cmp s,d
Lệnh sẽ nhảy đến label nếu s<=d trong đó s và d là tham số của lệnh cmp s,d
Question 7 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 6
Question 8 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh tham chiếu bộ nhớ
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
Question 9 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Incorrect chuyển đổi số 1100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 0.00 out of
1.00
Answer: 0000 0000 0000 0000 1100 1001 1110 1101
54.169.199.103/mod/quiz/review.php?attempt=1222&cmid=382 2/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 10 Ý nào sau đây là đúng về đoạn mã Assembly tính toán biểu thức a=b+c; trong đó các biến được khai báo như sau: int a;
Incorrect int c=-25; long b=283;
Mark 0.00 out of mov b, %rax
1.00
add c, %eax
mov %eax, a
Select one:
Thiếu lệnh khởi tạo giá trị cho a
Question 11 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Incorrect
Question 12 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Incorrect thanh ghi), xác định ý nào sau đây là sai?
Mark 0.00 out of
1.00 Select one:
ERRBước 3, trừ lệnh J-format, tất cả đều sử dụng bộ xử lý ALU
54.169.199.103/mod/quiz/review.php?attempt=1222&cmid=382 3/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 13 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Correct
ecx=ebx=1;
Mark 1.00 out of
1.00
for(eax=1; eax<n; eax++) {
edx=ecx;
ecx+=ebx;
ebx=edx;
biết các thanh ghi đang chứa các số không dấu, n được khai báo unsigned int n=23.
mov $1, %ebx
L1:
cmp n, %eax
jae endfor
mov %edx,%ebx
inc %eax
jmp L1
endfor:
Select one:
Chương trình hoàn toàn đúng
54.169.199.103/mod/quiz/review.php?attempt=1222&cmid=382 4/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 14 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh nhảy không điều kiện
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
Question 17 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Incorrect chuyển đổi số 1110 1001 1110 1111 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 0.00 out of
1.00
Answer: 0000 0000 0000 0000 1110 1001 1110 1111
Question 18 Ý nào sau đây là sai liên quan đến lệnh Assembly mul %rbx
Incorrect
Question 19 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có thao tác ALUOut = (PC + sign-extend(IR[15-0]) < < 2), ý nào
Incorrect sau đây là sai?
Mark 0.00 out of
1.00 Select one:
ERRGiả sử IR[15-0]=1010 1100 0101 1110 thì sign-extend(IR[15-0])= 0000 0000 0000 0000 1010 1100 0101 1110
ERRGiả sử IR[15-0]=0110 1100 0111 0110 thì sign-extend(IR[15-0])= 0000 0000 0000 0000 0110 1100 0111 0110
ERRGiả sử IR[15-0]=1110 1100 0111 0110 thì sign-extend(IR[15-0])= 1111 1111 1111 1111 1110 1100 0111 0110
54.169.199.103/mod/quiz/review.php?attempt=1222&cmid=382 5/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 20 Biết lệnh MIPS sau 00000010001100100100000000100000 thuộc loại R-format, ý nào sau đây là sai?
Correct
Question 21 Ý nào sau đây là sai liên quan đến lệnh Assembly: je label, trong đó label là một nhãn
Correct
Lệnh sẽ nhảy đến label nếu giá trị của 2 số là bằng nhau
Đây là lệnh nhảy có điều kiện, nó cần kết hợp với lệnh so sánh giá trị của 2 số nguyên cmp s, d
Lệnh này không thể dùng kết hợp với lệnh nào khác ngoài lệnh cmp
Question 22 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước 5 là ghi kết quả vào thanh ghi (WB), có nhiều lệnh có bước 5
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
Question 23 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính giá trị delta của phương trình bậc 2: ax2+bx+c=0; theo công
Correct thức delta=b*b-4*a*c; trong đó các biến được khai báo như sau: double a=4, b=9, c=4, delta;
Mark 1.00 out of mov $-4, %eax
1.00
mulsd a, %xmm0
mulsd c, %xmm0
movsd b, %xmm1
Select one:
Sai ở lệnh movsd %xmm0, delta
54.169.199.103/mod/quiz/review.php?attempt=1222&cmid=382 6/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 24 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
Question 25 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 0100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 0000 0000 0000 0000 0100 1001 1110 1101
Question 26 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh tham chiếu bộ nhớ
Ví dụ một lệnh là subsd $5, %xmm0 trong đó %xmm0 đang chứa một số kiểu double
Ví dụ một lệnh là cvttsd2si %xmm0, %rax trong đó %xmm0 đang chứa một số kiểu float
Question 29 Biết lệnh MIPS sau 00000010001100100100000000100000 thuộc loại R-format, ý nào sau đây là sai?
Correct
54.169.199.103/mod/quiz/review.php?attempt=1222&cmid=382 7/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 30 Cho lệnh MIPS beq $t1, $t2, -199, xác định ý nào sau đây là sai?
Correct
ERRLệnh này cần 4 chu kỳ để thực hiện, bước thứ 4 là nhảy đến lệnh được rẽ nhánh
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
54.169.199.103/mod/quiz/review.php?attempt=1222&cmid=382 8/8
Question 2 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác
Correct định giá trị của phần funct của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 26
Question 3 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác
Incorrect định kết quả của hàm khi chuyển đổi số 1000 0001 1010 1100 từ 16 bit sang 32 bit (viết kết quả,
Mark 0.00 out of tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
1.00
Answer: 11000000000
Question 4 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại I-format, xác
Correct định thanh ghi rt của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 8
Question 5 Đâu không phải là tên thanh ghi trong kiến trúc CPU của Intel?
Incorrect
XMM
RAX
AH
Lệnh này thao tác trên các thanh ghi xmm, không thao tác được với thanh ghi chứa số nguyên
như %eax
Question 8 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác
Correct định giá trị của phần funct của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 24
Question 9 Cho lệnh MIPS and $t1, $t2, $t3, xác định ý nào sau đây là sai?
Incorrect
ERRLệnh này thực hiện phép toán $t1=$t2 AND $t3, trong đó AND là phép toán AND bit
Question 10 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại J-format, xác
Correct định giá trị của phần Address của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 8978266
Question 11 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện phép toán a=c*(*b)+25; trong
Incorrect đó các biến được khai báo như sau float a; double *b; float c=1.8; và giả sử con trỏ b đã được gán
Mark 0.00 out of địa chỉ của một biến kiểu double.
1.00
mov b,%eax
mulss c, %xmm0
mov $25,%eax
cvtsi2ss %eax,%xmm1
addss %xmm1,%xmm0
movss %xmm0, a
Select one:
Có thể dùng lệnh movss để gán trực tiếp hằng số 25 vào thanh ghi %xmm1
Lệnh mulss c, %xmm0 là sai vì cần gán c vào một thanh ghi xmm
Thiếu lệnh chuyển đổi kiểu dữ liệu từ double sang float sau khi gán cho %xmm0 gía trị của *b
Question 12 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
mulsd a, %xmm0
mulsd c, %xmm0
movsd b, %xmm1
Select one:
Sai ở lệnh mov %xmm0, delta
Question 14 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ 3 ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
ERRThao tác thứ hai B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2, trong
mọi trường hợp giá trị của B luôn được sử dụng ở một trong các bước sau này
ERRThao tác đầu tiên A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
Question 15 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh beq thì thao tác được thực hiện sẽ là: ALUOut = A + sign-extend(IR[15-0])
ERRNếu là lệnh nhảy không điều kiện thì thao tác sẽ là PC = PC[31-28] || (IR[25-0] < < 2), trong
đó phép toán || là phép toán nối 2 dãy bit với nhau
ERRNếu là lệnh R-type thì thao tác được thực hiện sẽ là ALUOut = A op B, trong đó op là phép
toán cụ thể của lệnh
Question 16 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Incorrect
ERRKích thước của các thanh ghi cần tăng từ 8 thành 32 để phù hợp với cấu trúc của lệnh MIPS
ERRCác đường Operand1, Operand2 và Destination sẽ cần tăng từ 4 thành 5 để phù hợp với
cấu trúc của lệnh MIPS
Question 17 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Incorrect
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế
tiếp
ERRBước 5 là ghi kết quả vào thanh ghi (WB), có nhiều lệnh có bước 5
Question 18 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRNếu là lệnh tham chiếu bộ nhớ thì thao tác được thực hiện sẽ là: ALUOut = A + sign-
extend(IR[15-0])
ERRNếu là lệnh add thì thao tác được thực hiện sẽ là ALUOut = A + B
ERRNếu là lệnh nhảy không điều kiện thì thao tác sẽ là PC = PC[31-28] || (IR[25-0] < < 2), trong
đó phép toán || là phép toán OR
Question 19 Ý nào sau đây là sai về lệnh sau: cmp %al,%bl
Incorrect
Giá trị của cờ dấu SF và cờ zero ZF được cập nhật sau khi lệnh thực hiện
Sau khi thực hiện giá trị của %al và %bl bị thay đổi
Question 20 Ý nào sau đây là sai đối với lệnh mul %ebx
Incorrect
Question 21 Cho lệnh MIPS sau: 00000000100010001111111101011001, biết rằng nó thuộc loại R-format, xác
Correct định thanh ghi rs của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 4
Question 22 Ý nào sau đây là sai liên quan đến khai báo str: .asciz “Hello World”
Incorrect
Ngầm định biến str được chèn thêm một byte có giá trị 0 vào cuối
Ví dụ một lệnh là minsd a, %xmm0 trong đó %xmm0 đang chứa một số kiểu double, và a là
một biến kiểu double
Question 24 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại J-format, xác
Correct định giá trị của phần Address của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 22673792
Question 25 Đâu không phải là tên thanh ghi trong kiến trúc CPU của Intel?
Incorrect
XMM16
MMX0
RAX
Question 26 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác
Correct định thanh ghi rs của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 9
Question 27 Ý nào sau đây là sai liên quan đến các phương pháp cài đặt bộ vi xử lý CPU?
Incorrect
ERRGiải pháp đơn chu kỳ có nhược điểm là lệnh chạy nhanh sẽ lãng phí thời gian
ERRMột giải pháp là đơn chu kỳ, trong đó các lệnh khác nhau đều thực hiện trong khoảng thời
gian như nhau là 1 chu kỳ
Question 28 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước
của 1 lệnh
ERRThao tác thứ hai B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác thứ 3 ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
Question 29 Ý nào sau đây là sai về giải pháp cài đặt CPU đa chu kỳ
Correct
ERRThao tác trong mỗi chu kỳ chỉ được phép sử dụng tối đa 1 đơn vị tính toán chính (ví dụ như
ALU) để chúng ta không phải nhân bản các đơn vị tính toán, và tiết kiệm chi phí
ERRCác đơn vị tính toán chính (như ALU) sẽ được chia sẻ giữa các thao tác trong các chu kỳ
Question 30 Biết lệnh MIPS sau 00000010001100100100000000100000 thuộc loại R-format, ý nào sau đây là
Incorrect sai?
Mark 0.00 out of
1.00 Select one:
ERRrt có giá trị là 18
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Trong bước thực thi lệnh EX của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRNếu là lệnh nhảy có điều kiện thì thao tác sẽ là: if (A==B) PC = ALUOut
ERRNếu là lệnh beq thì thao tác được thực hiện sẽ là: ALUOut = A + sign-extend(IR[15-0])
ERRNếu là lệnh R-type thì thao tác được thực hiện sẽ là ALUOut = A op B, trong đó op là phép toán cụ thể của lệnh
Question 2 Ý nào sau đây là sai liên quan đến lệnh Assembly: jo label, trong đó label là một nhãn
Correct
Nhãn có địa chỉ trùng với lệnh đầu tiên ngay sau nó
Cần thực hiện một lệnh có tác động đến cờ OF, ví dụ lệnh add
Question 3 Ý nào sau đây là sai liên quan đến lệnh Assembly: jne label, trong đó label là một nhãn
Correct
Lệnh sẽ nhảy đến label nếu giá trị của 2 số là khác nhau
Lệnh này có thể dùng kết hợp với lệnh nào khác ngoài lệnh cmp
Question 4 Biết lệnh MIPS sau 00000010001100100100000000100000 thuộc loại R-format, ý nào sau đây là sai?
Correct
54.169.199.103/mod/quiz/review.php?attempt=1223&cmid=382 1/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 5 Ý nào sau đây là đúng liên quan đến lệnh đoạn mã Assembly thực hiện lệnh C
Incorrect
for (%ecx=n;%ecx > 0; %ecx--) %edx +=2; biết %ecx đang chứa các số nguyên không dấu và n là một biến kiểu
Mark 0.00 out of unsigned int lớn hơn 0
1.00
mov n, %ecx
for:
add $2,%edx
loop for
Select one:
Thừa dấu $ trước số 2
Thiếu lệnh so sánh %ecx với 0 để xác định nó có bằng 0 trước vòng lặp mới
Question 6 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Correct thanh ghi), xác định ý nào sau đây là sai?
Mark 1.00 out of
1.00 Select one:
ERRBước 5 của lệnh J-format không sử dụng bất kỳ đơn vị nào
Question 7 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 15
Question 8 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Correct thanh ghi), xác định ý nào sau đây là sai?
Mark 1.00 out of
1.00 Select one:
ERRBước 3, trừ lệnh J-format, tất cả đều sử dụng bộ xử lý ALU
54.169.199.103/mod/quiz/review.php?attempt=1223&cmid=382 2/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 9 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính tổng n số tự nhiên đầu tiên, trong đó n được khai báo
Incorrect unsigned int n; kết quả chứa ở thanh ghi %rax
Mark 0.00 out of xor %rcx, %rcx
1.00
mov n,%ecx
for:
loop for
Select one:
Chương trình hoàn toàn đúng
Question 10 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 0111 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 0000 0000 0000 0000 0111 1001 1110 1101
Question 11 Ý nào sau đây là sai về giải pháp cài đặt CPU đa chu kỳ
Incorrect
ERRThao tác trong mỗi chu kỳ chỉ được phép sử dụng tối đa 1 đơn vị tính toán chính (ví dụ như ALU) để chúng ta
không phải nhân bản các đơn vị tính toán, và tiết kiệm chi phí
ERRCác đơn vị tính toán chính (như ALU) sẽ được chia sẻ giữa các thao tác trong các chu kỳ
Question 12 Ý nào sau đây là sai liên quan đến lệnh Assembly div %ebx
Incorrect
Đây là phép chia 2 số nguyên không dấu, số chia có kích thước gấp 2 lần số chia
Question 13 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại I-format, xác định giá trị của phần
Correct offset của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 63872
54.169.199.103/mod/quiz/review.php?attempt=1223&cmid=382 3/8
11/28/2019 Bài kiểm tra Chương 3 +4
Ví dụ một lệnh là divsd $5, %xmm0 trong đó %xmm0 đang chứa một số kiểu double
Question 15 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 0100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 0000 0000 0000 0000 0100 1001 1110 1101
Question 16 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện phép toán a=c*b+25; trong đó các biến được khai báo
Correct như sau float a; double b; float c=1.8;
Mark 1.00 out of movsd b, %xmm0
1.00
mulss c, %xmm0
mov $25,%eax
cvtsi2ss %eax,%xmm1
addss %xmm1,%xmm0
movss %xmm0, a
Select one:
Thiếu lệnh chuyển đổi kiểu dữ liệu từ double sang float sau khi gán cho %xmm0 gía trị của b
Có thể dùng lệnh movss để gán trực tiếp hằng số 25 vào thanh ghi %xmm1
Lệnh mulss c, %xmm0 là sai vì cần gán c vào một thanh ghi xmm
54.169.199.103/mod/quiz/review.php?attempt=1223&cmid=382 4/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 17 Ý nào sau đây là đúng liên quan đến lệnh đoạn mã Assembly thực hiện biểu thức a=b+c-f; trong đó các biến đều là kiểu
Correct int
Mark 1.00 out of mov b, %eax
1.00
mov c, %ebx
mov f, %ebx
mov %eax, $a
Select one:
Cần phải dùng các thanh ghi %rax, %rbx thay cho các thanh ghi hiện tại
Question 18 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRKhông thể gộp bước 4 và 5 lại vì nó vi phạm điều kiện tại mỗi bước chỉ sử dụng tối đa 1 đơn vị xử lý chính, do nó
sử dụng bus dữ liệu để truy cập bộ nhớ và sử dụng đơn vị xử lý ALU
54.169.199.103/mod/quiz/review.php?attempt=1223&cmid=382 5/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 19 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Not answered
Marked out of
1.00
Select one:
a. Phần rs sẽ được truyền vào Operand1
c. Kích thước của các thanh ghi cần tăng từ 8 thành 32 để phù hợp với cấu trúc của lệnh MIPS
d. Các đường Operand1, Operand2 và Destination sẽ cần tăng từ 4 thành 5 để phù hợp với cấu trúc của lệnh MIPS
Question 20 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Correct thanh ghi), xác định ý nào sau đây là sai?
Mark 1.00 out of
1.00 Select one:
ERRBước 4 của lệnh lw có truy cập tập thanh ghi
Question 21 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
ERRBước 4 truy cập bộ nhớ (đối với lệnh đọc/ghi dữ liệu từ RAM) hoặc thanh ghi (đối với lệnh R-type) viết tắt là MEM
Question 22 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại J-format, xác định giá trị của phần
Correct Address của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 1978266
54.169.199.103/mod/quiz/review.php?attempt=1223&cmid=382 6/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 23 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ hai B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác đầu tiên A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất, trong mọi trường hợp
giá trị của A luôn được sử dụng ở một trong các bước sau này
ERRThao tác thứ 3 ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
Question 25 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước 5 là ghi kết quả vào thanh ghi (WB), có nhiều lệnh có bước 5
Question 26 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2, B được sử dụng nếu đây là
lệnh đọc dữ liệu từ bộ nhớ
Question 27 Cho lệnh MIPS and $t1, $t2, $t3, xác định ý nào sau đây là sai?
Correct
Question 28 Ý nào sau đây là sai liên quan đến lệnh Assembly mul %bx
Incorrect
Toán hạng thứ nhất của phép nhân được lưu ở thanh ghi %ax
54.169.199.103/mod/quiz/review.php?attempt=1223&cmid=382 7/8
11/28/2019 Bài kiểm tra Chương 3 +4
Question 29 Cho lệnh MIPS and $t1, $t2, $t3, xác định ý nào sau đây là sai?
Correct
ERRLệnh này thực hiện phép toán $t1=$t2 AND $t3, trong đó AND là phép toán AND bit
Question 30 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính phần dư của phép chia 2 số nguyên dương (hay phép toán a
Incorrect % b) chứa trong %rax và %rbx, tuân theo giải thuật
Mark 0.00 out of while(%rax>=%rbx) %rax -= %rbx; kết quả chứa ở %rax
1.00
L1:
cmp %rbx,%rax
jb found
sub %rbx,%rax
jmp L1
found:
Select one:
Sai ở lệnh jb found
54.169.199.103/mod/quiz/review.php?attempt=1223&cmid=382 8/8
11/28/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThác tác thứ 2 nhằm thực hiện một cấu trúc ngầm định là cấu trúc tuần tự
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
ERRTải lệnh làm nhiệm vụ đọc một lệnh từ đĩa cứng vào một thanh ghi trong CPU để phục vụ quá trình xử lý ở các
bước tiếp theo
Question 2 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính biểu thức c=10-(a[3]+a[2]+a[1]); trong đó các biến được khai
Incorrect báo như sau int c, a[4]; và giả sử mảng a đã được gán giá trị.
Mark 0.00 out of mov $3, %edx
1.00
dec %edx
dec %edx
movsd %eax, c
Select one:
Sai ở lệnh mov a(,%edx,4), %eax
54.169.199.103/mod/quiz/review.php?attempt=1218&cmid=382 1/9
11/28/2019 Bài kiểm tra Chương 3 +4
Question 3 Cho lệnh MIPS and $t1, $t2, $t3, xác định ý nào sau đây là sai?
Incorrect
ERRLệnh này thực hiện phép toán $t1=$t2 AND $t3, trong đó AND là phép toán AND bit
Question 4 Cho lệnh MIPS sau: 00000001001011011101101111011000, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 15
Question 5 Cho cấu trúc của bộ xử lý ALU và lệnh MIPS như sau, ý nào sau đây là sai
Incorrect
Select one:
a. Phần rs sẽ được truyền vào Operand1
b. Các đường Operand1, Operand2 và Destination sẽ cần tăng từ 4 thành 5 để phù hợp với cấu trúc của lệnh MIPS
d. Kích thước của các thanh ghi cần tăng từ 8 thành 32 để phù hợp với cấu trúc của lệnh MIPS
Question 6 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRKhông thể gộp bước 4 và 5 lại vì nó vi phạm điều kiện tại mỗi bước chỉ sử dụng tối đa 1 đơn vị xử lý chính
54.169.199.103/mod/quiz/review.php?attempt=1218&cmid=382 2/9
11/28/2019 Bài kiểm tra Chương 3 +4
Question 7 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRKhông thể gộp bước 4 và 5 lại vì nó vi phạm điều kiện tại mỗi bước chỉ sử dụng tối đa 1 đơn vị xử lý chính
Question 8 Cho lệnh MIPS beq $t2, $t3,25, ý nào sau đây là sai?
Correct
ERRTheo cấu trúc lệnh I-format thì phần offset sẽ có giá trị là 25
Question 9 Ý nào sau đây là sai liên quan đến lệnh Assembly sau mov $output, %ecx trong đó biến output được khai báo như sau:
Correct output: .asciz “The result is: ”
Mark 1.00 out of
1.00 Select one:
Đây là lệnh gán giá trị của output cho thanh ghi %ecx
Lệnh gán không làm thay đổi giá trị của các cờ trong thanh ghi trạng thái
Đây là lệnh gán địa chỉ của output cho thanh ghi %ecx
Question 10 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ hai B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác thứ 3 ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy
ERRThao tác đầu tiên A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
Question 11 Cho lệnh MIPS sau: 00000000100010001111111101011001, biết rằng nó thuộc loại R-format, xác định thanh ghi rt của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 8
Question 12 Ý nào sau đây là sai liên quan đến lệnh Assembly test %ex,%bx
Correct
Lệnh này thực hiện phép toán AND theo bit giữa %ex và %bx
Lệnh này kiểm tra xem %ex có bằng %bx hay không
Giá trị của 2 thanh ghi không bị thay đổi sau khi thực hiện phép toán
54.169.199.103/mod/quiz/review.php?attempt=1218&cmid=382 3/9
11/28/2019 Bài kiểm tra Chương 3 +4
Question 13 Cho lệnh MIPS sau: 00000000000111100010111110011010, biết rằng nó thuộc loại R-format, xác định giá trị của phần
Correct shamt của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 30
Question 14 Cho cấu trúc của lệnh J-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Incorrect
Select one:
a. Chỉ có duy nhất lệnh j (jump) có cấu trúc J-format
c. Phần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo (theo đơn vị byte)
Question 15 Ý nào sau đây là sai liên quan đến lệnh Assembly: jcxz label, trong đó label là một nhãn
Correct
54.169.199.103/mod/quiz/review.php?attempt=1218&cmid=382 4/9
11/28/2019 Bài kiểm tra Chương 3 +4
Question 16 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C
Incorrect if(eax==1) eax=ebx+1;
Mark 0.00 out of else if (eax==2) ebx=eax+ecx+2;
1.00 else if (eax==3) ebx=eax+ecx+3;
biết các thanh ghi đang chứa các số không dấu.
if: cmp $1, %eax
je L1
jmp endif
L1:
jne L2
jmp endif
L2:
jne endif
endif:
Select one:
Sai ở dòng if: cmp $1, %eax
Sai ở lệnh je L1
54.169.199.103/mod/quiz/review.php?attempt=1218&cmid=382 5/9
11/28/2019 Bài kiểm tra Chương 3 +4
Question 17 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 0100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 0000 0000 0000 0000 0100 1001 1110 1101
Một số cờ trong thanh ghi trạng thái có thể bị thay đổi giá trị
Question 19 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
ERRTải lệnh làm nhiệm vụ đọc một lệnh từ bộ nhớ vào một thanh ghi trong CPU để phục vụ quá trình xử lý ở các
bước tiếp theo
ERRThác tác thứ 2 của bước này có thể gây ra sai sót khi gặp lệnh nhảy
Question 20 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước 4 truy cập bộ nhớ (đối với lệnh đọc/ghi dữ liệu từ RAM) hoặc thanh ghi (đối với lệnh R-type) viết tắt là MEM
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
Question 21 Đâu không phải là tên thanh ghi trong kiến trúc CPU của Intel?
Incorrect
MMX0
MMX
AH
Question 22 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 4
54.169.199.103/mod/quiz/review.php?attempt=1218&cmid=382 6/9
11/28/2019 Bài kiểm tra Chương 3 +4
Question 23 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước đầu tiên là tải lệnh (IF), đưa lệnh vào thanh ghi lệnh của CPU để chuẩn bị cho các bước tiếp theo, đồng thời
chuyển con trỏ lệnh đến lệnh kế tiếp
Question 24 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Correct
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh tham chiếu bộ nhớ
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
Question 25 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRKhông thể gộp bước 4 và 5 lại vì nó vi phạm điều kiện tại mỗi bước chỉ sử dụng tối đa 1 đơn vị xử lý chính, do nó
sử dụng bus dữ liệu để truy cập bộ nhớ và sử dụng đơn vị xử lý ALU
54.169.199.103/mod/quiz/review.php?attempt=1218&cmid=382 7/9
11/28/2019 Bài kiểm tra Chương 3 +4
Question 26 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly thực hiện lệnh C if(eax>ebx || eax>ecx) eax=ebx+ecx; else
Incorrect ebx=eax+ecx; biết các thanh ghi đang chứa các số không dấu
Mark 0.00 out of cmp %ebx, %eax
1.00
ja then
jbe else
then:
jmp endif
else:
endif:
Select one:
Sai ở lệnh ja then
Question 27 Ý nào sau đây là sai liên quan đến lệnh Assembly jc label, trong đó label là một nhãn
Correct
Trước khi dùng lệnh này cần thực hiện một lệnh có ảnh hưởng đến CF trước
54.169.199.103/mod/quiz/review.php?attempt=1218&cmid=382 8/9
11/28/2019 Bài kiểm tra Chương 3 +4
Question 28 Trong bước 3 của lệnh j (jump) thực hiện thao tác PC = PC[31-28] || (IR[25-0] < < 2), ý nào sau đây là sai?
Correct
ERRPhép toán dịch trái ( < <) là cần thiết vì địa chỉ chứa trong IR[25-0] là địa chỉ tính theo đơn vị lệnh, cần chuyển ra
đơn vị là byte thì cần nhân với 4
ERRGiả sử IR[25-0]=00 0000 0000 1010 1100 0101 1111, và PC=0001 0000 1111 1001 1100 0111 0111 1000 thì PC =
PC[31-28] || (IR[25-0] < < 2)= 0000 0000 0000 0010 1011 0001 0111 1100
Question 30 Các bước của lệnh trong kiến trúc lệnh MIPS được sử dụng tối đa một đơn vị chính của hệ thống (bộ nhớ trong, ALU, tập
Correct thanh ghi), xác định ý nào sau đây là sai?
Mark 1.00 out of
1.00 Select one:
ERRBước 2 sử dụng bộ xử lý ALU
54.169.199.103/mod/quiz/review.php?attempt=1218&cmid=382 9/9
28/11/2019 Bài kiểm tra Chương 3 +4
Dashboard / My courses / Lớp 2019HK1-INT2205 22 / Chapter 4 (Part 2). Intel-based Assembly / Bài kiểm tra Chương 3 +4
Question 1 Ý nào sau đây là đúng liên quan đến lệnh đoạn mã Assembly thực hiện lệnh if(%eax>%ebx+2) %edx=2; biết %eax, %ebx
Correct đang chứa các số nguyên không dấu, chú ý sau khi thực hiện lệnh thì không được làm thay đổi giá trị của %ebx
Mark 1.00 out of mov %ebx, %ecx
1.00
jbe endif
mov 2, %edx
endif:
Select one:
Cần tráo đổi vị trí của 2 tham số của lệnh cmp cho nhau
Question 2 Cho cấu trúc của lệnh J-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Correct
Select one:
a. Chỉ có duy nhất lệnh j (jump) có cấu trúc J-format
d. Phần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo theo đơn vị là lệnh
Question 3 Ý nào sauu đây là sai về phương pháp cài đặt đa chu kỳ của kiến trúc MIPS?
Correct
ERRBước 4 truy cập bộ nhớ (đối với lệnh đọc/ghi dữ liệu từ RAM) hoặc thanh ghi (đối với lệnh R-type) viết tắt là MEM
ERRBước đầu tiên là tải lệnh (IF), trong bước này có bao gồm chuyển con trỏ lệnh đến lệnh kế tiếp
54.169.199.103/mod/quiz/review.php?attempt=1214&cmid=382 1/8
28/11/2019 Bài kiểm tra Chương 3 +4
Một số cờ trong thanh ghi trạng thái có thể bị thay đổi giá trị
Question 5 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
Question 6 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 1100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 1111 1111 1111 1111 1100 1001 1110 1101
54.169.199.103/mod/quiz/review.php?attempt=1214&cmid=382 2/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 7 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính phần nguyên của thương (%rax / %rbx) của của 2 số nguyên
Incorrect dương chứa trong %rax và %rbx, tuân theo giải thuật
Mark 0.00 out of %rcx=0;
1.00
while(%rax>%rbx) {
%rcx++;
%rax -= %rbx;
##
xor %rcx,%rcx
L1:
cmp %rbx,%rax
jb found
sub %rbx,%rax
inc %rcx
jmp L1
found:
Select one:
Sai ở lệnh xor %rcx,%rcx
L1 phải là while
Question 8 Ý nào sau đây là sai liên quan đến lệnh Assembly: je label, trong đó label là một nhãn
Incorrect
Lệnh sẽ nhảy đến label nếu giá trị của 2 số là bằng nhau
Đây là lệnh nhảy có điều kiện, nó cần kết hợp với lệnh so sánh giá trị của 2 số nguyên cmp s, d
54.169.199.103/mod/quiz/review.php?attempt=1214&cmid=382 3/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 9 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU
ERRThác tác thứ 2 nhằm thực hiện một cấu trúc ngầm định là cấu trúc tuần tự
Question 10 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính biểu thức c=10-(a[3]+a[2]+a[1]); trong đó các biến được khai
Incorrect báo như sau int c, a[4]; và giả sử mảng a đã được gán giá trị.
Mark 0.00 out of mov $2, %edx
1.00
dec %edx
mov %eax, c
Select one:
Sai ở lệnh mov a(,%edx,4), %eax
Question 11 Cho lệnh MIPS add $t1, $t2, $t3, xác định ý nào sau đây là sai?
Correct
Question 12 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác đầu tiên: A = Reg[IR[25-21]] là đọc giá trị của thanh ghi chứa toán hạng thứ nhất
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh thuộc kiểu R-type
54.169.199.103/mod/quiz/review.php?attempt=1214&cmid=382 4/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 13 Cho lệnh MIPS sau: 00000101010110011111100110000000, biết rằng nó thuộc loại I-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 10
Question 14 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh nhảy không điều kiện
Question 15 Cho cấu trúc của lệnh I-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Correct
Select one:
a. Kích thước phần địa chỉ của các thanh ghi là 5 bits, suy ra tổng số lượng thanh ghi trong kiến trúc MIPS là 32
Question 16 Ý nào sau đây là đúng về lệnh movsd arr(,%eax,8),%xmm1, trong đó biến arr được khai báo như sau arr: .double 3.1, 2.3,
Incorrect 3.4, 4.5, 5.6
Mark 0.00 out of
1.00 Select one:
Lệnh này gán 1 phần tử của mảng số thực ở vị trí được lưu ở thanh ghi %eax vào thanh ghi %xmm1
Lệnh này gán giá trị của một số thực trong %xmm1 vào một phần tử của mảng arr
Question 17 Cho cấu trúc của lệnh J-format của tập lệnh MIPS như hình dưới, ý nào sau đây là sai?
Correct
Select one:
a. Phần address biểu diễn một số nguyên không dấu
d. Phần address xác định địa chỉ của lệnh sẽ được thực hiện tiếp theo theo đơn vị là lệnh
Question 18 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 1100 1001 1110 1101 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 1111 1111 1111 1111 1100 1001 1110 1101
54.169.199.103/mod/quiz/review.php?attempt=1214&cmid=382 5/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 19 Trong bước truy 5 WB của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác được thực hiện là: Reg[IR[20-16]]= MDR, trong đó MDR là thanh ghi lưu trữ kết quả tạm thời
ERRNếu là lệnh đọc từ bộ nhớ thì thao tác thực hiện sẽ là: MDR = Memory[ALUOut]
Question 20 Cho lệnh MIPS beq $t1, $t2, 789, xác định ý nào sau đây là sai?
Incorrect
ERRChu kỳ 3 thực hiện thao tác kiểm tra $t1 có bằng $t2 không để gán giá trị tính toán được từ bước 2 cho thanh ghi
PC
Question 21 Biết movslq s, d là lệnh thực hiện phép mở rộng dấu (hay chuyển từ kiểu int sang kiểu long) với s là một tham số kiểu int
Correct và d là một thanh ghi mục đích chung 64 bit kiểu long. Ý nào sau đây là đúng về đoạn mã Assembly sau tính toán biểu
Mark 1.00 out of thức c=a+b; trong đó các biến được khai báo như sau: int a=8; float c; long b=20;
1.00
movslq a, %rax
add b, %rax
cvttsi2ssq %rax, c
Select one:
Sai ở lệnh add b, %rax
54.169.199.103/mod/quiz/review.php?attempt=1214&cmid=382 6/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 22 Ý nào sau đây là đúng liên quan đến đoạn mã Assembly tính biểu thức c=10-(a[3]+a[2]+a[1]); trong đó các biến được khai
Incorrect báo như sau int c, a[4]; và giả sử mảng a đã được gán giá trị.
Mark 0.00 out of mov $3, %edx
1.00
dec %edx
dec %edx
movsd %eax, c
Select one:
mov a(,%edx,4), %eax
Question 24 Trong bước giải mã lệnh ID của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác thứ hai: B = Reg[IR[20-16]] là đọc giá trị của thanh ghi chứa toán hạng thứ 2
ERRToán tử dịch trái 2 bit ( < <) trong thao tác thứ 3 có ý nghĩa là nhân với 4, đây là kích thước của 1 lệnh
ERRThao tác thứ 3: ALUOut = PC + (sign-extend(IR[15-0]) < < 2) là tính địa chỉ của lệnh nhảy, giá trị của ALUOut
được sử dụng ở một trong các bước sau này nếu đây là một lệnh tham chiếu bộ nhớ
Question 25 Ý nào sau đây là sai liên quan đến lệnh Assembly: jecxz label, trong đó label là một nhãn
Incorrect
Lệnh sẽ nhảy đến label nếu thanh ghi %ecx có giá trị là 0
54.169.199.103/mod/quiz/review.php?attempt=1214&cmid=382 7/8
28/11/2019 Bài kiểm tra Chương 3 +4
Question 26 Cho lệnh MIPS sau: 00000000100010001111111101011010, biết rằng nó thuộc loại I-format, xác định giá trị của phần
Correct offset của lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 65370
Question 28 Trong bước tải lệnh IF của kiến trúc lệnh MIPS, ý nào sau đây là sai?
Incorrect
ERRThao tác đầu tiên trong bước này là IR = Memory[PC], trong đó IR là thanh ghi trong CPU, và PC là con trỏ chứa
địa chỉ của lệnh sẽ được thực hiện tiếp theo
ERRThao tác thứ 2 là PC = PC + 4, ý nghĩa là đưa con trỏ lệnh đến lệnh tiếp theo lệnh vừa được tải vào CPU, nó có
thể gây ra lỗi khi lệnh đang xử lý là lệnh nhảy
ERRThác tác thứ 2 nhằm thực hiện một cấu trúc ngầm định là cấu trúc tuần tự
Question 29 Cho lệnh MIPS sau: 00000101111100101000111111011000, biết rằng nó thuộc loại R-format, xác định thanh ghi rs của
Correct lệnh, ví dụ 6?
Mark 1.00 out of
1.00
Answer: 15
Question 30 Trong bước thứ 2 của quá trình xử lý lệnh MIPS đa chu kỳ có sử dụng hamg sign-extend(x), xác định kết quả của hàm khi
Correct chuyển đổi số 1110 1001 1110 1111 từ 16 bit sang 32 bit (viết kết quả, tách 4 bit thành 1 nhóm cách nhau 1 dấu trắng)?
Mark 1.00 out of
1.00
Answer: 1111 1111 1111 1111 1110 1001 1110 1111
54.169.199.103/mod/quiz/review.php?attempt=1214&cmid=382 8/8