You are on page 1of 7

Trường ĐH Công nghệ Thông tin

Khoa Kỹ Thuật Máy Tính


Đại học Quốc gia TP.HCM

BÀI THỰC HÀNH SỐ 2

BÀI THU HOẠCH


CE119 – Thực Hành Kiến Trúc Máy Tính

GVHD: Nguyễn Mạnh Thảo


Nhóm: 13
I. Danh sách thành viên:
Thành viên 1 Lạc Phương Bình 2052 1116
Thành viên 2 Đặng Anh Khoa 2052 0217

II. Bảng phân công công việc:


2052 1116: 3a (code)
2052 0217: 3a (flowchart) + 3b
III. Nội dung Bài thu hoạch
Bài tập 3:
a)
-Đọc và lưu số phần tử N của mảng. Nếu N <= 0 hoặc N > 50, báo lỗi và yêu cầu nhập
lại.
-Đọc và lưu giá trị của phần tử đầu tiên trong mảng N.
-Gán giá trị của MAX, MIN, SUM bằng giá trị của N và counter bằng 1 (Vì đã nhập
phần tử đầu tiên)
-Bắt đầu vòng lặp với counter = 2, counter tăng 1 mỗi vòng lặp và dừng lại khi
counter > N:
+Kiểm tra điều kiện vòng lặp, nếu không thỏa mãn thì kết thúc vùng lặp
+Nhập giá trị array[i]
+SUM += array[i]
+Nếu array[i] < MIN thì gán MIN bằng array[i], chuyển sang vòng lặp tiếp
theo (Không xét MAX vì nếu array[i] là MIN thì không thể lớn hơn bất kỳ phần tử
nào khác)
+Nếu array[i] > MAX thì gán MAX bằng array[i]
+Chuyển sang vòng lặp tiếp theo
-Xuất giá trị MAX, MIN, SUM
-Đọc và lưu chỉ số i của mảng. Nếu i < 0 hoặc >= N, báo lỗi và yêu cầu nhập lại.
-Tìm địa chỉ của phần tử array[i] bằng cách cộng địa chỉ cơ bản của mảng array với
4(i-1) .
-Xuất giá trị của phần tử array[i] với địa chỉ vừa tìm được
Flowchart:
b)
la $t1, $s1
sll $t1, 2
add $t1, $t1, $s3 #$t1: address A[i]
slt $t0, $s0, $s1
beq $t0, $zero, __else #if (i<j)
sw $s0, ($t1) #A[i] = i
__else: #else
sw $s1, ($t1) #A[i] = j

You might also like