Bài giảng Tin học đại cương: Phần I (Chương 2, Phần 3) - TS.Nguyễn Bá Ngọc

27 19 0
Bài giảng Tin học đại cương: Phần I (Chương 2, Phần 3) - TS.Nguyễn Bá Ngọc

Đ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

Cùng tìm hiểu biểu diễn ký tự; biểu diễn số thực; các dạng biểu diễn cơ bản; dạng chính xác đơn (Single precision 32 bit); giá trị của số thực độ chính xác đơn (32 bit);... được trình bày cụ thể trong Bài giảng Tin học đại cương: Phần I (Chương 2, Phần 3) do TS.Nguyễn Bá Ngọc biên soạn.

IT1110 Tin học đại cương Phần I: Tin học Chương 2: Biểu diễn liệu máy tính Nguyễn Bá Ngọc Nội dung chương  2.1 Các hệ đếm  2.2 Biểu diễn liệu đơn vị đo  2.3 Biểu diễn số nguyên  2.4 Phép toán số học với số nguyên  2.5 Tính tốn logic với số nhị phân  2.6 Biểu diễn ký tự  2.7 Biểu diễn số thực 2.6 Biểu diễn ký tự  Nguyên tắc chung: Các ký tự cần biểu diễn chuỗi bit nhị phân gọi mã ký tự  Số bit dùng để biểu diễn ký tự phụ thuộc vào mã (ánh xạ 1-1 ký tự mã ký tự) sử dụng Vd : Bộ mã ASCII dùng bit cho ký tự Bộ mã Unicode dùng 16 bit  Bộ mã ASCII (American Standard Code for Information Interchange)     Bộ mã sử dụng máy tính Do ANSI (American National Standard Institute) thiết kế ASCII mã dùng để trao đổi thông tin chuẩn Mỹ Lúc đầu dùng bit (128 ký tự) sau mở rộng thành bit biểu diễn 256 ký tự khác máy tính Bộ mã ASCII mở rộng bit bao gồm:  128 kí tự chuẩn có mã từ 0016 ÷ 7F16  128 kí tự mở rộng có mã từ 8016 ÷ FF16 Ký tự điều khiển định dạng BS Backspace – Lùi lại vị trí Ký tự điều khiển trỏ lùi lại vị trí HT Horizontal Tab – Ký tự điều khiển trỏ dịch khoảng định trước LF Line Feed – Ký tự điều khiển trỏ xuống dòng VT Vertical Tab – Ký tự điều khiển trỏ dịch số dòng FF Form Feed – Ký tự điều khiển trỏ chuyển xuống đầu trang CR Carriage Return – Ký tự điều khiển trỏ đầu dòng hành Bộ mã ASCII (1)  95 kí tự hiển thị được:có mã từ 2016 ÷ 7E16    10 chữ số thập phân '0' ÷ '9' có mã từ 3016 ÷ 3916 26 chữ hoa Latin 'A' ÷ 'Z' có mã từ 4116 ÷ 5A16 26 chữ thường Latin 'a' ÷ 'z' có mã từ 6116 ÷ 7A16 Bộ mã ASCII (2)  95 ký tự hiển thị được:      Các dấu câu: , ? ! : ; v.v Các dấu phép toán: + - * / v.v Một số kí tự thơng dụng: #, $, &, @, v.v Dấu cách (mã 2016) 33 mã điều khiển: mã từ 0016 ÷ 1F16 7F16 dùng để mã hóa cho chức điều khiển Các ký tự mở rộng bảng mã ASCII  Được định nghĩa bởi:    Nhà chế tạo máy tính Người phát triển phần mềm Ví dụ:    Bộ mã ký tự mở rộng IBM: dùng máy tính IBM-PC Bộ mã ký tự mở rộng Apple: dùng máy tính Macintosh Các nhà phát triển phần mềm tiếng Việt thay đổi phần để mã hoá cho ký tự riêng chữ Việt, ví dụ mã TCVN 5712, TCVN (ABC), v v 10 2.7 Biểu diễn số thực  2.7.1 Nguyên tắc chung   Để biểu diễn số thực, máy tính thường dùng ký pháp dấu phẩy động (Floating Point Number) Tổng quát: số thực X biểu diễn theo kiểu số dấu phẩy động sau:  X = M * RE  M phần định trị (Mantissa)  R số (Radix)  E phần mũ (Exponent) 13 2.7.2 Chuẩn IEEE754-1985 14 Các dạng biểu diễn 31 30 S 63 S  22 e m 62 52 51 e m 32 bit (dạng xác đơn – single precision)    23 kiểu float C exponent bias = 127 64 bit (dạng xác kép – double precision)   kiểu double C exponent bias = 1023 15 Dạng xác đơn (Single precision 32 bit)  S bit dấu   S = 1: số âm Phần mũ E:    S = 0: số dương; E = e – 127, e (excess) có độ dài bit Giá trị 127 gọi độ lệch (bias) Phần định trị M=1.m, m phần lẻ phần định trị gồm 23 bit: 23 m = ∑ b23−i −i i =1  Công thức xác định giá trị số thực: X = (-1)S * M * 2e-127 16 Giá trị số thực độ xác đơn (32 bit)  Nếu bit e = bit m =    Các bit e = 1, bit m =    S = → X = +0 S = → X = –0 S = → X = +∞ S = → X = –∞ Các bit e = 1, cịn m có bit = khơng biểu diễn cho số (NaN – Not A Number, lỗi chia cho 0) 17 Giá trị số thực độ xác đơn (32 bit)  Denormalized numbers  Tất bit e = X = (-1)S x 0.m x 2-126 Normalized numbers    min(E) = –126 với e = max(E) = 127 với e = 254 (khi e = 255, X số hữu hạn)  X = (-1)S x 1.m x 2e – 127  18 Dạng 32 – bit Ví dụ:     Xác định giá trị số thực biểu diễn 32 bit sau: 1100 0001 0101 0110 0000 0000 0000 0000 S = → số âm e = 1000 00102 = 130 → E = 130 – 127 = Vậy, X= -1.10101100*23 = -1101.011 = -13.375 19 Dạng 32 – bit Ví dụ (tiếp):   0011 1111 1000 0000 0000 0000 0000 0000 Kết = +1.0 20 Dải biểu diễn giá trị  Độ xác đơn (32 bit)     Giá trị gần (biểu diễn denomalized numbers) ± 2-149 ≈ ±1,4012985 x 10-45 Giá trị gần (biểu diễn normalized numbers) ± 2-126 ≈ ±1,175494351 x 10-38 Giá trị hữu hạn xa (với e = 254 bit m 1) ± (1 – 2-24) x 2128 ≈ ±3.4028235 x 1038 Số chữ số có nghĩa ≈ 21 Dải biểu diễn giá trị  Độ xác kép (double precision 64 bit)    Giá trị gần (biểu diễn denomalized numbers) ± 2-1074 ≈ ±5 x 10-324 Giá trị gần (biểu diễn normalized numbers) ± 2-1022 ≈ ±2,2250738585072020 x 10-308 Giá trị hữu hạn xa (với e = 2046 bit m 1) ± (1 – 2-53) x 21024 ≈ ±1.7976931348623157 x 1038  Số chữ số có nghĩa ≈ 15 22 Định dạng mở rộng   Chuẩn IEEE754-1985 xác định độ xác lũy thừa tối thiểu cho định dạng mở rộng X87 80-bit extended format chuẩn biết đến nhiều thỏa mãn yêu cầu 23 Thực phép toán số dấu phẩy động  X1 = M1 * RE1  X2 = M2 * RE2  Ta có:    X1 * X2 = (M1 * M2) * RE1+ E2 X1 / X2 = (M1 / M2) * RE1 - E2 X1 ± X2 = (M1* RE1-E2 ± M2) * RE2, với E1 ≥ E2 24 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ớ ngồi 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ị 25 Phép cộng phép trừ  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 hóa kết 26 Hỏi - đáp 27 ... ASCII dùng bit cho ký tự Bộ mã Unicode dùng 16 bit  Bộ mã ASCII (American Standard Code for Information Interchange)     Bộ mã sử dụng máy tính Do ANSI (American National Standard Institute)... = +1.0 20 D? ?i biểu diễn giá trị  Độ xác đơn (32 bit)     Giá trị gần (biểu diễn denomalized numbers) ± 2-1 49 ≈ ±1,4012985 x 1 0-4 5 Giá trị gần (biểu diễn normalized numbers) ± 2-1 26 ≈ ±1,175494351... (biểu diễn denomalized numbers) ± 2-1 074 ≈ ±5 x 1 0-3 24 Giá trị gần (biểu diễn normalized numbers) ± 2-1 022 ≈ ? ?2,2 250738585072020 x 1 0-3 08 Giá trị hữu hạn xa (v? ?i e = 2046 bit m 1) ± (1 – 2- 53) x

Ngày đăng: 11/05/2021, 04:23

Mục lục

  • IT1110 Tin học đại cương

  • Nội dung chương này

  • 2.6. Biểu diễn ký tự

  • Bộ mã ASCII (American Standard Code for Information Interchange)

  • Ký tự điều khiển định dạng

  • Các ký tự mở rộng của bảng mã ASCII

  • 2.7. Biểu diễn số thực

  • Các dạng biểu diễn cơ bản

  • Dạng chính xác đơn (Single precision 32 bit)

  • Giá trị của số thực độ chính xác đơn (32 bit)

  • Dải biểu diễn giá trị

  • Định dạng mở rộng

  • Thực hiện phép toán số dấu phẩy động

  • Các khả năng tràn số

  • Phép cộng và phép trừ

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

Tài liệu liên quan