kiến trúc máy tính trương văn cường 3 bài tập đáp án chương3 phan 1(cong tru nhan chia) sinhvienzone com

11 135 0
kiến trúc máy tính trương văn cường 3  bài tập đáp án chương3 phan 1(cong tru nhan chia) sinhvienzone com

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Khoa Kỹ thuật Máy tính – Đại học Cơng Nghệ Thông Tin 2015 Bảng 1: Bài số Cho bảng sau với số viết hệ thập phân A a 69 b 102 c 200 d 247 B 90 44 103 237 Giả sử A B số dùng bit lưu trữ, theo dạng số có dấu dùng bù hai Tính A + B Giả sử A B số dùng bit lưu trữ, theo dạng số có dấu dùng bù hai Tính A - B Giả sử A B số dùng bit lưu trữ, theo dạng số khơng dấu Tính A + B (chỉ tính cho c d) Đáp án: a A = 69(10) = 0100 0101 B = 90(10) = 0101 1010 A+B= 1001 1111 – overflow (do cộng hai số dương mà tổng số âm – tương ứng hàng bảng 1=> tràn) Vậy: A + B = 127(10) bị tràn (Kiểm chứng lại: 69(10) + 90(10) = 159(10) mà giá trị dương lớn số có dấu dùng bits bù 127, rõ ràng phép toàn bị tràn số) b A = 102(10) = 0110 0110 B = 44(10) = 0010 1100 A + B = 1001 0010 – overflow (do cộng hai số dương mà tổng số âm => tràn) Vậy A + B = 127(10) bị tràn (Kiểm chứng lại: 102(10) + 44(10) = 146 mà giá trị dương lớn số có dấu dùng bits bù 127, rõ ràng phép toàn bị tràn số) c A = 200(10) = 1100 1000 B = 103(10) = 0110 0111 A + B = 0010 1111 Dịch: Trần Thị Như Nguyệt CuuDuongThanCong.com Page https://fb.com/tailieudientucntt Khoa Kỹ thuật Máy tính – Đại học Cơng Nghệ Thơng Tin 2015 (Tổng số dương số âm không xảy tràn) Vậy A + B = 0010 1111= 47(10) (Kiểm chứng lại: A = 1100 1000 = -56(10) B = 0110 0111 = 103(10) A + B = -56(10) + 103(10) = 47(10)) Lưu ý: Có thể bị hiểu lầm A = 200(10) B = 103(10) A + B = 47(10) lại A =200(10) cách viết (thay cho chuỗi số 0, cụ thể, đề dùng hệ 10 hệ khác để biểu diễn), chuỗi số đưa vào máy tính có giới hạn biểu diễn bit xét dấu, máy tính hiểu A = -56(10) nên A + B = -56(10) + 103(10) = 47(10) d A = 247 = 1111 0111 B = 237 = 1110 1101 A + B = 1110 0100 (Tổng số âm kết số âm => không xảy tràn số) Vậy A + B = 1110 0100 = -28 (Kiểm chứng lại: A = 1111 0111= -9(10) B = 1110 1101= -19(10) A + B = -9 + (-19) = -28(10)) a A = 69(10) = 01000101 B = 90(10) = 01011010 Bù B = 10100110 A – B = A + bù B = 1110 1011 (Phép trừ hai số dương, tức tổng số dương số âm khơng bị tràn) Vậy A – B = 11101011 = -21(10) (Kiểm chứng lại: 69(10) - 90(10) = -21(10)) b A = 102(10) = 0110 0110 B = 44(10) = 00101100 Bù B = 1101 0100 A – B = A + bù B = 0011 1010 Phép trừ hai số dương, tức tổng số dương số âm khơng bị tràn) Vậy A – B = 0011 1010 = 58(10) Dịch: Trần Thị Như Nguyệt CuuDuongThanCong.com Page https://fb.com/tailieudientucntt Khoa Kỹ thuật Máy tính – Đại học Cơng Nghệ Thông Tin 2015 (Kiểm chứng lại: 102(10) - 44(10) = 58(10)) c A = 200(10) = 1100 1000 B = 103(10) = 0110 0111 Bù B = 1001 1001 A – B = A + bù B = 0110 0001 => overflow (Do phép toán trừ số âm trừ số dương, hay phép toán cộng hai số âm, mà tổng lại số dương, tương ứng với hàng thứ hàng thứ bảng => overflow) Vậy A – B = -128 (Kiểm chứng lại: A = 11001000 = -56(10) B = 01100111 = 103(10) A – B = -56 – 103 = - 159(10) mà giá trị âm nhỏ số có dấu bit bù -128, nên phép toán bị tràn) d A = 247(10) = 1111 0111 B = 237(10) = 1110 1101 Bù hai B = 0001 0011 A – B = A + bù B = 0000 1010 (Đây phép toán trừ số âm cho số âm, tức phép toán cộng số âm số dương => chắn không bị tràn) Vậy A + B = 0000 1010 = 10(10) (Kiểm chứng lại: A = 1111 01112 = -9 (10) B = 1110 11012 = -19(10) A – B = -9 – (-19) = 10(10)) a A = 69(10) = 0100 0101 B = 90(10) = 0101 1010 A + B = 1001 1111 ,không bị tràn Vậy: A + B = 1001 1111 = 159(10) (Kiểm chứng lại: 69 + 90 = 159(10) tầm giá trị số không dấu bits từ tới 255 nên phép tốn khơng bị tràn) b A = 102(10) = 0110 0110 B = 44(10) = 0010 1100 A + B = 1001 0010 , không bị tràn Vậy A + B = 1001 0010 = 146(10) Dịch: Trần Thị Như Nguyệt CuuDuongThanCong.com Page https://fb.com/tailieudientucntt Khoa Kỹ thuật Máy tính – Đại học Cơng Nghệ Thơng Tin 2015 (Kiểm chứng lại: 102 + 44 = 146(10) tầm giá trị số không dấu bits từ tới 255 nên phép tốn khơng bị tràn) c A = 200(10) = 1100 1000 B = 103(10) = 0110 0111 A+B = 0010 1111 => overflow Vậy A + B = 255(10) bị tràn (Kiểm chứng lại 200 + 103 = 303(10), mà giá trị lớn số không dấu bit 255, nên rõ ràng phép toán bị tràn số) d A = 247 = 1111 0111 B = 237 = 1110 1101 A + B = 1110 0100 => overflow Vậy A + B = 255(10) bị tràn (Kiểm chứng lại 247 + 237 = 484(10), mà giá trị lớn số không dấu bit 255, nên rõ ràng phép toán bị tràn số) Bài số Cho số bảng sau (dùng cho câu 2) a 50(8) 23(8) b 66(8) 04(8) Giả sử số biểu diễn theo kiểu không dấu bit, tính tốn phép nhân A B theo cấu trúc phần cứng hình Hình Giả sử số biểu diễn theo kiểu không dấu bit, tính tốn phép nhân A B theo cấu trúc phần cứng hình Dịch: Trần Thị Như Nguyệt CuuDuongThanCong.com Page https://fb.com/tailieudientucntt Khoa Kỹ thuật Máy tính – Đại học Cơng Nghệ Thơng Tin 2015 Hình Cho số bảng sau (dùng cho câu 4) a 54 67 b 30 07 Giả sử số biểu diễn theo kiểu có dấu bit, tính tốn phép nhân A B theo cấu trúc phần cứng hình Giả sử số biểu diễn theo kiểu có dấu bit, tính tốn phép nhân A B theo cấu trúc phần cứng hình Đáp án: a A = 50(8) = 101000 B = 23(8) = 010011 Iteration Step Initial values 1.1a: 1 Prod = Prod + Mcand 2: Shift left Multiplicand 3: Shift right Multiplier 1.1a: 1 Prod = Prod + Mcand 2: Shift left Multiplicand 3: Shift right Multiplier 1:  No operation 2: Shift left Multiplicand 3: Shift right Multiplier 1:  No operation 2: Shift left Multiplicand 3: Shift right Multiplier 1.1a: 1 Prod = Prod + Mcand 2: Shift left Multiplicand 3: Shift right Multiplier 1:  No operation 2: Shift left Multiplicand 3: Shift right Multiplier Multiplier 01 0011 01 0011 01 0011 00 1001 00 1001 00 1001 00 0100 00 0100 00 0100 00 0010 00 0010 00 0010 00 0001 00 0001 00 0001 00 0000 00 0000 00 0000 00 0000 Multiplicand 0000 0010 1000 0000 0010 1000 0000 0101 0000 0000 0101 0000 0000 0101 0000 0000 1010 0000 0000 1010 0000 0000 1010 0000 0001 0100 0000 0001 0100 0000 0001 0100 0000 0010 1000 0000 0010 1000 0000 0010 1000 0000 0101 0000 0000 0101 0000 0000 101 0000 0000 1010 0000 0000 1010 0000 0000 Product 0000 0000 0000 0000 0010 1000 0000 0010 1000 0000 0010 1000 0000 0111 1000 0000 0111 1000 0000 0111 1000 0000 0111 1000 0000 0111 1000 0000 0111 1000 0000 0111 1000 0000 0111 1000 0000 0111 1000 0010 1111 1000 0010 1111 1000 0010 1111 1000 0010 1111 1000 0010 1111 1000 0010 1111 1000 Kết quả: A x B = 001011111000 = 1370(8) Dịch: Trần Thị Như Nguyệt CuuDuongThanCong.com Page https://fb.com/tailieudientucntt Khoa Kỹ thuật Máy tính – Đại học Công Nghệ Thông Tin 2015 b A = 66(8) = 110110 B = 04(8) = 000100 Iteration Step Multiplier Multiplicand Product Initial values 00 0100 00 0011 0110 0000 0000 0000 1:  No operation 00 0100 00 0110 1100 0000 0000 0000 2: Shift left Multiplicand 00 0010 00 0110 1100 0000 0000 0000 3: Shift right Multiplier 00 0010 00 0110 1100 0000 0000 0000 1:  No operation 00 0010 00 0110 1100 0000 0000 0000 2: Shift left Multiplicand 00 0010 00 1101 1000 0000 0000 0000 3: Shift right Multiplier 00 0001 00 1101 1000 0000 0000 0000 1.1a: 1 Prod = Prod + Mcand 00 0001 00 1101 1000 0000 1101 1000 2: Shift left Multiplicand 00 0001 01 1011 0000 0000 1101 1000 3: Shift right Multiplier 00 0000 01 1011 0000 0000 1101 1000 1:  No operation 00 0000 01 1011 0000 0000 1101 1000 2: Shift left Multiplicand 00 0000 11 0110 0000 0000 1101 1000 3: Shift right Multiplier 00 0000 11 0110 0000 0000 1101 1000 1:  No operation 00 0000 11 0110 0000 0000 1101 1000 2: Shift left Multiplicand 00 0000 10 110 00000 0000 1101 1000 3: Shift right Multiplier 00 0000 10 110 00000 0000 1101 1000 1:  No operation 00 0000 10 110 00000 0000 1101 1000 2: Shift left Multiplicand 00 0000 01 10 000000 0000 1101 1000 3: Shift right Multiplier 00 0000 01 10 000000 0000 1101 1000 Lưu ý: từ lần lặp thứ 4, multiplier 0, dừng, kết Product kể từ không bị thay đổi Kết quả: A x B = 0000 1101 1000= 330(8) a A = 50(8) = 101000 B = 23(8) = 010011 Kết A x B = 001011111000 = 1370(8) Dịch: Trần Thị Như Nguyệt CuuDuongThanCong.com Page https://fb.com/tailieudientucntt Khoa Kỹ thuật Máy tính – Đại học Cơng Nghệ Thông Tin 2015 b A = 66(8) = 110110 B = 04(8) = 000100 Kết A x B = 000011011000 = 330(8) (Số có dấu bits) a A = 54(8) = 101100 => A số âm, bù A = 010100 (A = -24) B = 67(8) = 110111=> B số âm, bù B = 001001 (B = -11) Thực phép nhân bù A cho bù B Iteration Step Initial values 1a:  Prod = Prod + Mcand 2: Shift left Multiplicand 3: Shift right Multiplier 1:  No operation 2: Shift left Multiplicand 3: Shift right Multiplier 1:  No operation 2: Shift left Multiplicand 3: Shift right Multiplier 1a:  Prod = Prod + Mcand 2: Shift left Multiplicand 3: Shift right Multiplier 1:  No operation 2: Shift left Multiplicand 3: Shift right Multiplier 1:  No operation 2: Shift left Multiplicand 3: Shift right Multiplier Multiplier 00 1001 00 1001 00 1001 00 0100 00 0100 00 0100 00 0010 00 0010 00 0010 00 0001 00 0001 00 0001 00 0000 00 0000 00 0000 00 0000 00 0000 00 0000 00 0000 Multiplicand 0000 0001 0100 0000 0001 0100 0000 0010 1000 0000 0010 1000 0000 0010 1000 0000 0101 0000 0000 0101 0000 0000 0101 0000 0000 1010 0000 0000 1010 0000 0000 1010 0000 0001 0100 0000 0001 0100 0000 0001 0100 0000 0010 1000 0000 0010 1000 0000 0010 1000 0000 0101 0000 0000 0101 0000 0000 Dịch: Trần Thị Như Nguyệt CuuDuongThanCong.com Product 0000 0000 0000 0000 0001 0100 0000 0001 0100 0000 0001 0100 0000 0001 0100 0000 0001 0100 0000 0001 0100 0000 0001 0100 0000 0001 0100 0000 0001 0100 0000 1011 0100 0000 1011 0100 0000 1011 0100 0000 1011 0100 0000 1011 0100 0000 1011 0100 0000 1011 0100 0000 1011 0100 0000 1011 0100 Page https://fb.com/tailieudientucntt Khoa Kỹ thuật Máy tính – Đại học Cơng Nghệ Thơng Tin 2015 Vậy: Bù A x bù B = 0000 1011 0100 = 264(8)  A x B = 264(8) b 30 x 07 A = 30(8) = 011000 => A số dương B = 07(8) = 000111=> B số dương Thực phép nhân A với B số không dấu (sinh viên tự vẽ bảng) Kết quả: A x B = 250(8) a A = 54(8) = 101100 => A số âm, bù A = 010100 (A = -24) B = 67(8) = 110111=> B số âm, bù B = 001001 (B = -11) Thực phép nhân bù A cho bù B số không dấu Iteration Step Initial values Prod = Prod + Mcand Rshift Prod Lsb =  No operation Rshift Prod Lsb =  No operation Rshift Prod Prod = Prod + Mcand Rshift Prod Lsb =  No operation Rshift Prod Lsb =  No operation Rshift Prod Multiplicand 01 0100 01 0100 01 0100 01 0100 01 0100 01 0100 01 0100 01 0100 01 0100 01 0100 01 0100 01 0100 01 0100 Product/Multiplier 000000 001001 010100 001001 001010000100 001010000100 000101000010 000101000010 000010 100001 010110 100001 001011 010000 001011 010000 000101 101000 000101 101000 0000101 10100 Vậy: Bù A x bù B = 0000101 10100= 264(8)  A x B = 264(8) b 30 x 07 A = 30(8) = 011000 => A số dương B = 07(8) = 000111=> B số dương Thực phép nhân A với B số không dấu Dịch: Trần Thị Như Nguyệt CuuDuongThanCong.com Page https://fb.com/tailieudientucntt Khoa Kỹ thuật Máy tính – Đại học Cơng Nghệ Thơng Tin 2015 Bài số Cho A = 50(16) B = 23(16) Giả sử số biểu diễn theo kiểu không dấu bit, tính tốn phép nhân A B theo cấu trúc phần cứng hình 2 A = 66(16) B = 04(16) Giả sử số biểu diễn theo kiểu khơng dấu bit, tính tốn phép nhân A B theo cấu trúc phần cứng hình Đáp án: A = 5016 = 0101 00002 B = 2316 = 0010 00112 Iteration Step Initial values Prod = Prod + Mcand Shift right Product Prod = Prod + Mcand Shift right Product lsb = 0, no op Shift right Product lsb = 0, no op Shift right Product lsb = 0, no op Multiplicand 0101 0000 0101 0000 0101 0000 0101 0000 0101 0000 0101 0000 0101 0000 0101 0000 0101 0000 0101 0000 Product/ Multiplier 0000 0000 0010 0011 0101 0000 0010 0011 0010 1000 0001 0001 0111 1000 0001 0001 0011 1100 0000 1000 0011 1100 0000 1000 0001 1110 0000 0100 0001 1110 0000 0100 0000 1111 0000 0010 0000 1111 0000 0010 Dịch: Trần Thị Như Nguyệt CuuDuongThanCong.com Page https://fb.com/tailieudientucntt Khoa Kỹ thuật Máy tính – Đại học Công Nghệ Thông Tin Shift right Product lsb = 0, no op Shift right Product lsb = 0, no op Shift right Product lsb = 0, no op Shift right Product 0101 0000 0101 0000 0101 0000 0101 0000 0101 0000 0101 0000 0101 0000 2015 0000 0111 1000 0001 0101 0111 1000 0001 0010 1011 1100 0000 0010 1011 1100 0000 0001 0101 1110 0000 0001 0101 1110 0000 0000 1010 1111 0000 Vậy A x B = 0000 1010 1111 0000 = AF0(16) A = 6616 = 0110 01102 B = 0416 = 0000 01002 Iteration Step Initial values lsb = 0, no op Shift right Product Prod = Prod + Mcand Shift right Product lsb = 0, no op Shift right Product lsb = 0, no op Shift right Product lsb = 0, no op Shift right Product lsb = 0, no op Shift right Product lsb = 0, no op Shift right Product lsb = 0, no op Shift right Product Multiplicand 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 0110 Product/ Multiplier 0000 0000 0000 0100 0000 0000 0000 0100 0000 0000 0000 0010 0000 0000 0000 0010 0000 0000 0000 0001 0110 0110 0000 0001 0011 0011 0000 0000 0011 0011 0000 0000 0001 1001 1000 0000 0001 1001 1000 0000 0000 1100 1100 0000 0000 1100 1100 0000 0000 0110 0110 0000 0000 0110 0110 0000 0000 0011 0011 0000 0000 0011 0011 0000 0000 0001 1001 1000 Vậy A x B = 0000 0001 1001 1000 = 198(16) Bài số Thực phép chia không dấu A/B theo cấu trúc phần cứng hình, biết máy tính dùng bit biểu diễn số A 40 25 a b B 21 44 Dịch: Trần Thị Như Nguyệt CuuDuongThanCong.com Page 10 https://fb.com/tailieudientucntt Khoa Kỹ thuật Máy tính – Đại học Cơng Nghệ Thơng Tin 2015 Shift left Q bit, Q0 = Lưu ý: câu b, thực A/B, dùng bit, chạy theo giải thuật chia không đúng; dùng lớn bit Sinh viên trả lời câu hỏi sau: - Vì lại khơng đúng? Gợi ý giải pháp để giải trường hợp - Thực lại câu b với hai trường hợp sau: o B = 34 o B = 44 A, B dùng số bit để biểu diễn Dịch: Trần Thị Như Nguyệt CuuDuongThanCong.com Page 11 https://fb.com/tailieudientucntt ... 1000= 33 0(8) a A = 50(8) = 101000 B = 23( 8) = 010011 Kết A x B = 001011111000 = 137 0(8) Dịch: Trần Thị Như Nguyệt CuuDuongThanCong .com Page https://fb .com/ tailieudientucntt Khoa Kỹ thuật Máy tính. .. https://fb .com/ tailieudientucntt Khoa Kỹ thuật Máy tính – Đại học Cơng Nghệ Thơng Tin 2015 Bài số Cho A = 50(16) B = 23( 16) Giả sử số biểu diễn theo kiểu khơng dấu bit, tính tốn phép nhân A B theo cấu trúc phần cứng hình... 198(16) Bài số Thực phép chia không dấu A/B theo cấu trúc phần cứng hình, biết máy tính dùng bit biểu diễn số A 40 25 a b B 21 44 Dịch: Trần Thị Như Nguyệt CuuDuongThanCong .com Page 10 https://fb .com/ tailieudientucntt

Ngày đăng: 28/01/2020, 23:15

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan