Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 60 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
60
Dung lượng
1,1 MB
Nội dung
NKK-HUST c om Kiến trúc máy tính cu u du on g th an co ng Chương SỐ HỌC MÁY TÍNH Nguyễn Kim Khánh Trường Đại học Bách khoa Hà Nội 2017 Kiến trúc máy tính CuuDuongThanCong.com 134 https://fb.com/tailieudientucntt NKK-HUST Nội dung học phần cu u du on g th an co ng c om Chương Giới thiệu chung Chương Cơ logic số Chương Hệ thống máy tính Chương Số học máy tính Chương Kiến trúc tập lệnh Chương Bộ xử lý Chương Bộ nhớ máy tính Chương Hệ thống vào-ra Chương Các kiến trúc song song 2017 Kiến trúc máy tính CuuDuongThanCong.com 135 https://fb.com/tailieudientucntt NKK-HUST om Nội dung chương cu u du on g th an co ng c 4.1 Biểu diễn số nguyên 4.2 Phép cộng phép trừ số nguyên 4.3 Phép nhân phép chia số nguyên 4.4 Số dấu phẩy động 2017 Kiến trúc máy tính CuuDuongThanCong.com 136 https://fb.com/tailieudientucntt NKK-HUST c om 4.1 Biểu diễn số nguyên ng co cu u du on g th n Số nguyên không dấu (Unsigned Integer) Số nguyên có dấu (Signed Integer) an n 2017 Kiến trúc máy tính CuuDuongThanCong.com 137 https://fb.com/tailieudientucntt NKK-HUST Biểu diễn số nguyên không dấu om Nguyên tắc tổng quát: Dùng n bit biểu diễn số nguyên không dấu A: c n an co ng an−1an−2 a2 a1a0 cu u du on g th Giá trị A tính sau: A = ∑ i i=0 Dải biểu diễn A: 2017 n−1 [0, 2n – 1] Kiến trúc máy tính CuuDuongThanCong.com 138 https://fb.com/tailieudientucntt NKK-HUST Ví dụ om Biểu diễn số nguyên không dấu sau 8-bit: A = 41 ; B = 150 Giải: A = 41 = 32 + + = 25 + 23 + 20 41 = 0010 1001 du on g th an co ng c n cu u B = 150 = 128 + 16 + + = 27 + 24 + 22 + 21 150 = 1001 0110 2017 Kiến trúc máy tính CuuDuongThanCong.com 139 https://fb.com/tailieudientucntt NKK-HUST Ví dụ n N = 1011 1001 ng M = 0001 0010 co n c om Cho số nguyên không dấu M, N biểu diễn 8-bit sau: an n g th Xác định giá trị chúng ? du on Giải: M = 0001 0010 = 24 + 21 = 16 +2 = 18 n N = 1011 1001 = 27 + 25 + 24 + 23 + 20 cu u n = 128 + 32 + 16 + + = 185 2017 Kiến trúc máy tính CuuDuongThanCong.com 140 https://fb.com/tailieudientucntt NKK-HUST Với n = bit om Biểu diễn giá trị từ đến 255 (28 - 1) Biểu diễn nhị phân 0000 0000 0000 0001 0000 0010 0000 0011 0000 0100 1111 1110 1111 1111 c Chú ý: co ng 1111 1111 an + 0000 0001 g cu u du on có nhớ ra ngồi (Carry out) th 0000 0000 255 + 1 = 0 ??? do vượt ra khỏi dải biểu diễn 2017 Giá trị thập phân 254 255 Kiến trúc máy tính CuuDuongThanCong.com 141 https://fb.com/tailieudientucntt NKK-HUST Trục số học với n = bit om Trục số học: 255 co ng c 255 Trục số học máy tính: cu u du on g th an 254 2017 Kiến trúc máy tính CuuDuongThanCong.com 142 https://fb.com/tailieudientucntt NKK-HUST Với n = 16 bit, 32 bit, 64 bit n n c ng co = 255 = 256 = 65535 n n cu u du n an n = th n 0000 0000 0000 0000 0000 0000 1111 1111 0000 0001 0000 0000 1111 1111 1111 1111 g n om n= 16 bit: dải biểu diễn từ đến 65535 (216 - 1) on n n= 32 bit: dải biểu diễn từ đến 232 - n= 64 bit: dải biểu diễn từ đến 264 - 2017 Kiến trúc máy tính CuuDuongThanCong.com 143 https://fb.com/tailieudientucntt NKK-HUST n c Sign Biased bit exponent Trailing significand field Dạng 32-bit an bits 23 bits (a) Binary32 format ng n Cơ số R = Các dạng: co n om Chuẩn IEEE754-2008 Dạng 64-bit Trailing significand field g n th Sign Biased bit exponent 52 bits du on 11 bits (b) Binary64 format n cu u Sign bit Dạng 128-bit 2017 Biased exponent 15 bits (c) Binary128 format Trailing significand field 112 bits Kiến trúc máy tính CuuDuongThanCong.com 179 https://fb.com/tailieudientucntt NKK-HUST 1 bit 8 bit 23 bit c m n co S = số dương S = số âm ng S bit dấu: n th e (8 bit) giá trị dịch chuyển phần mũ E: g n e an n S om Dạng 32-bit du m (23 bit) phần lẻ phần định trị M: n n cu u n e = E + 127 phần mũ E = e - 127 on n M = 1.m Công thức xác định giá trị số thực: X = (-1)S*1.m * 2e-127 2017 Kiến trúc máy tính CuuDuongThanCong.com 180 https://fb.com/tailieudientucntt NKK-HUST Ví dụ n ng c om Xác định giá trị số thực biểu diễn 32-bit sau đây: 1100 0001 0101 0110 0000 0000 0000 0000 co S = số âm n e = 1000 0010(2) = 130(10) E = 130 - 127 = Vậy X = -1.10101100(2) * 23 = -1101.011(2) = -13.375(10) n cu u du on g th an n 0011 1111 1000 0000 0000 0000 0000 0000 = ? 2017 Kiến trúc máy tính CuuDuongThanCong.com 181 https://fb.com/tailieudientucntt NKK-HUST Ví dụ c om Biểu diễn số thực X= 83.75(10) dạng số dấu phẩy động IEEE754 32-bit co ng Giải: X = 83.75(10) = 1010011.11(2) = 1.01001111 x 26 n Ta có: g th an n n E = e - 127 = e = 127 + = 133(10) = 1000 0101(2) Vậy: du on S = số dương cu u n n X = 0100 0010 1010 0111 1000 0000 0000 0000 2017 Kiến trúc máy tính CuuDuongThanCong.com 182 https://fb.com/tailieudientucntt NKK-HUST Các qui ước đặc biệt om Các bit e 0, bit m 0, X = ± x000 0000 0000 0000 0000 0000 0000 0000 X = ± co Các bit e 1, bit m 0, X = ± ¥ x111 1111 1000 0000 0000 0000 0000 0000 X =± ¥ th an n ng c n g Các bit e 1, m có bit 1, không biểu diễn cho số (NaN - not a number) cu u du on n 2017 Kiến trúc máy tính CuuDuongThanCong.com 183 https://fb.com/tailieudientucntt NKK-HUST Dải giá trị biểu diễn om an co ng n 2-127 đến 2+127 10-38 đến 10+38 c n -2-127 +2-127 +2+127 cu u du on g th -2+127 2017 Kiến trúc máy tính CuuDuongThanCong.com 184 https://fb.com/tailieudientucntt NKK-HUST Dạng 64-bit om co ng n S bit dấu e (11 bit) giá trị dịch chuyển phần mũ E: c n th m (52 bit): phần lẻ phần định trị M Giá trị số thực: du n on g n e = E + 1023 phần mũ E = e - 1023 an n n cu u X = (-1)S*1.m * 2e-1023 Dải giá trị biểu diễn: 10-308 đến 10+308 2017 Kiến trúc máy tính CuuDuongThanCong.com 185 https://fb.com/tailieudientucntt NKK-HUST Dạng 128-bit om th m (112 bit): phần lẻ phần định trị M Giá trị số thực: du n on g n e = E + 16383 phần mũ E = e - 16383 an n co ng n S bit dấu e (15 bit) giá trị dịch chuyển phần mũ E: c n n cu u X = (-1)S*1.m * 2e-16383 Dải giá trị biểu diễn: 10-4932 đến 10+4932 2017 Kiến trúc máy tính CuuDuongThanCong.com 186 https://fb.com/tailieudientucntt NKK-HUST n c ng X1 * X2 = (M1* M2) * RE1+E2 X1 / X2 = (M1 / M2) * RE1-E2 X1 ± X2 = (M1*RE1-E2 ± M2) * RE2 , với E2 ³ E1 cu u du n on g n co n an n X1 = M1 * RE1 X2 = M2 * RE2 Ta có th n om Thực phép toán số dấu phẩy động 2017 Kiến trúc máy tính CuuDuongThanCong.com 187 https://fb.com/tailieudientucntt NKK-HUST Các khả tràn số Tràn số mũ (Exponent Overflow): mũ dương vượt khỏi giá trị cực đại số mũ dương (à ∞) Tràn số mũ (Exponent Underflow): mũ âm vượt khỏi giá trị cực đại số mũ âm (à 0) Tràn phần định trị (Mantissa Overflow): cộng hai phần định trị có dấu, kết bị nhớ bit cao Tràn phần định trị (Mantissa Underflow): Khi hiệu chỉnh phần định trị, số bị bên phải phần định trị n co on cu u du n g th an n ng c om n 2017 Kiến trúc máy tính CuuDuongThanCong.com 188 https://fb.com/tailieudientucntt NKK-HUST c Kiểm tra số hạng có hay không Hiệu chỉnh phần định trị Cộng trừ phần định trị Chuẩn hoá kết an th cu u du n g n on n co ng n om Phép cộng phép trừ 2017 Kiến trúc máy tính CuuDuongThanCong.com 189 https://fb.com/tailieudientucntt NKK-HUST Thuật tốn cộng/trừ số dấu phẩy động om TRỪ ZßY Y=0? N Phần mũ nhau? Y N Tăng phần mũ nhỏ Zß X Y ng Y N co X=0? Zß Y an CỘNG c Đổi dấu Y TRỞ VỀ định trị bị tràn? g du cu u 2017 định trị = 0? N Dịch phải phần định trị Y=0? Y Dịch phải phần định trị Y Cất số vào Z Tăng phần mũ on N Kết chuẩn hóa? TRỞ VỀ N TRỞ VỀ Y Phần mũ bị tràn? Giảm phần mũ Y Báo tràn N TRỞ VỀ Kiến trúc máy tính CuuDuongThanCong.com Làm trịn kết N Phần mũ bị tràn dưới? TRỞ VỀ Báo tràn Y N TRỞ VỀ th Dịch phải phần định trị Cộng có dấu phần định trị 190 https://fb.com/tailieudientucntt NKK-HUST Thuật tốn nhân số dấu phẩy động N Y=0? Cộng phần mũ Y Trừ cho độ lệch ng Y N c X=0? om NHÂN co Zß Tràn phần mũ? cu u du on g th an TRỞ VỀ Y Thông báo tràn N Tràn phần mũ? N Nhân phần định trị Y Thông báo tràn TRỞ VỀ Chuẩn hóa Làm trịn TRỞ VỀ 2017 Kiến trúc máy tính CuuDuongThanCong.com 191 https://fb.com/tailieudientucntt NKK-HUST Thuật tốn chia số dấu phẩy động N N Trừ phần mũ c Y=0? Y Zß Zß Cơng thêm độ lệch ∞ co Y ng X=0? om CHIA Tràn phần mũ? th an TRỞ VỀ N on g Tràn phần mũ? cu u du N Chia phần định trị Y Thông báo tràn Y Thông báo tràn TRỞ VỀ Chuẩn hóa Làm trịn TRỞ VỀ 2017 Kiến trúc máy tính CuuDuongThanCong.com 192 https://fb.com/tailieudientucntt co ng c om NKK-HUST cu u du on g th an Hết chương 2017 Kiến trúc máy tính CuuDuongThanCong.com 193 https://fb.com/tailieudientucntt ... Chương Giới thiệu chung Chương Cơ logic số Chương Hệ thống máy tính Chương Số học máy tính Chương Kiến trúc tập lệnh Chương Bộ xử lý Chương Bộ nhớ máy tính Chương Hệ thống vào-ra Chương Các kiến. .. Các kiến trúc song song 2017 Kiến trúc máy tính CuuDuongThanCong.com 135 https://fb.com/tailieudientucntt NKK-HUST om Nội dung chương cu u du on g th an co ng c 4. 1 Biểu diễn số nguyên 4. 2 Phép... cộng phép trừ số nguyên 4. 3 Phép nhân phép chia số nguyên 4. 4 Số dấu phẩy động 2017 Kiến trúc máy tính CuuDuongThanCong.com 136 https://fb.com/tailieudientucntt NKK-HUST c om 4. 1 Biểu diễn số nguyên