Tổ chức máy tính
Bài tập về nhà 2 Due Date: 02 Tháng 10 năm 2015
1) Đối với các tuyên bố sau đây C, MIPS lắp ráp mã tương ứng là gì? Giả sử rằng các biến i và j được gán cho thanh ghi $ s0 và $ s1, tương ứng. Giả định rằng các địa chỉ cơ sở của mảng A và B là trong thanh ghi $ s6 và $ s7, tương ứng.
B [8] = A [ij];
2) Đối với các hướng dẫn lắp ráp MIPS sau, câu lệnh C tương ứng là gì? Giả sử rằng các biến f và g được gán cho thanh ghi $ s0 và $ s1, tương ứng. Giả định rằng các địa chỉ cơ sở của mảng A và B là trong thanh ghi $ s6 và $ s7, tương ứng.
Sll $ t0, $ s0, 2 # $ t0 = f * 4
add $ t0, $ s6, $ t0 # $ t0 = & A [f]
sll $ t1, $ s1, 2 # $ t1 = g * 4
add $ t1, $ s7, $ t1 # $ t1 = & B [g]
lw $ s0, 0 ($ t0) # f = A [ f]
Addï $ t2, $ t0, 4
lw $ t0, 0 ($ t2)
thêm $ t0, $ t0, $ s0
sw $ t0, 0 ($ t1)
3) Đối với các hướng dẫn lắp ráp MIPS trong bài tập 2, viết lại mã lắp ráp để giảm thiểu số lượng nếu hướng dẫn MIPS (nếu có thể) cần thiết để thực hiện các chức năng tương tự.
4) Dịch mã sau MIPS thành ngôn ngữ máy:
Addï $ t0, $ s6, 4
add $ t1, $ s6, 0 $
sw $ t1, 0 ($ t0)
lw $ t0, 0 ($ t0)
thêm $ s0, $ t1, $ t0
5) Dịch mã C sau để lắp ráp mã MIPS. Sử dụng một số lượng tối thiểu của các hướng dẫn. Giả sử rằng các giá trị của a, b, i, và j trong
thanh ghi $ s0, $ s1, $ t0, và $ t1, tương ứng. Ngoài ra, giả định rằng đăng ký $ s2 giữ địa chỉ cơ sở của mảng D.
for (i = 0; i
đang được dịch, vui lòng đợi..
