Cấu trúc máy tính - Chương 2: Biểu diễn dữ liệu và số học máy tính

2.1. C|c hệ đếm cơ bản

2.2. M~ hóa v{ lưu trữ dữ liệu trong m|y tính

2.3. Biểu diễn số nguyên

2.4. C|c phép to|n số học với số nguyên

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

2.6. Biểu diễn kí tự

pdf106 trang | Chia sẻ: Mr Hưng | Lượt xem: 924 | Lượt tải: 0download
Bạn đang xem trước 20 trang nội dung tài liệu Cấu trúc máy tính - Chương 2: Biểu diễn dữ liệu và số học máy tính, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
101 0110 0000 0000 0000 0000 X|c định gi| trị thập ph}n của số thực đó.  Giải:  S = 1  X l{ số }m  e = 1000 0010 = 130  m = 10101100...00  Vậy X = (-1)1 x 1.10101100...00 x 2130-127 = -1.101011 x 23 = -1101.011 = -13.375 84 Ví dụ về số dấu chấm động (tiếp)  Ví dụ 2: X|c định gi| trị thập ph}n của số thực X có dạng biểu diễn theo chuẩn IEEE 754 dạng 32 bit như sau: 0011 1111 1000 0000 0000 0000 0000 0000  Giải: 85 Ví dụ về số dấu chấm động (tiếp)  Ví dụ 3: Biểu diễn số thực X = 9.6875 về dạng số dấu chấm động theo chuẩn IEEE 754 dạng 32 bit  Giải: X = 9.6875(10) = 1001.1011(2) = 1.0011011 x 2 3 Ta có:  S = 0 vì đ}y l{ số dương  E = e – 127 nên e = 127 + 3 = 130(10) = 1000 0010(2)  m = 001101100...00 (23 bit) Vậy: X = 0100 0001 0001 1011 0000 0000 0000 0000 86 Các quy ước đặc biệt  Nếu tất cả c|c bit của e đều bằng 0, c|c bit của m đều bằng 0, thì X =  0  Nếu tất cả c|c bit của e đều bằng 1, c|c bit của m đều bằng 0, thì X =    Nếu tất cả c|c bit của e đều bằng 1, m có ít nhất một bit bằng 1, thì X không phải l{ số (not a number - NaN) 87 Trục số biểu diễn  Dạng 32 bit: a = 2-127 ≈ 10-38 b = 2+127 ≈ 10+38  Dạng 64 bit: a = 2-1023 ≈ 10-308 b = 2+1023 ≈ 10+308  Dạng 80 bit: a = 2-16383 ≈ 10-4932 b = 2+16383 ≈ 10+4932 -0 +0-a b-b a underflow overflow overflow  88 Thực hiện các phép toán  X1 = M1 * R E1  X2 = M2 * R E2  Ta có  X1  X2 = (M1 * R E1-E2  M2) * RE2 , với E2  E1  X1 * X2 = (M1 * M2) * RE1+E2  X1 / X2 = (M1 / M2) * RE1-E2 89 Các khả năng tràn số  Tr{n trên số mũ (Exponent Overflow): mũ dương vượt ra khỏi gi| trị cực đại của số mũ dương có thể.  Tr{n dưới số mũ (Exponent Underflow): mũ }m vượt ra khỏi gi| trị cực đại của số mũ }m có thể.  Tr{n trên phần định trị (Mantissa Overflow): cộng hai phần định trị có cùng dấu, kết quả bị nhớ ra ngo{i bit cao nhất.  Tr{n dưới phần định trị (Mantissa Underflow): Khi hiệu chỉnh phần định trị, c|c số bị mất ở bên phải phần định trị. 90 Phép cộng và phép trừ  Kiểm tra c|c số hạng có bằng 0 hay không  Nếu có thì g|n kết quả dựa trên số còn lại.  Hiệu chỉnh phần định trị  Sao cho 2 số có phần mũ giống nhau: tăng số mũ nhỏ v{ dịch phải phần định trị tương ứng (dịch phải để hạn chế sai số nếu có).  VD: 1.01 * 23 + 1.11 = 1.01 * 23 + 0.00111 * 23  Cộng hoặc trừ phần định trị  Nếu tr{n thì dịch phải v{ tăng số mũ, nếu bị tr{n số mũ thì b|o lỗi tr{n số.  Chuẩn hóa kết quả  Dịch tr|i phần định trị để bit tr|i nhất (bit MSB) kh|c 0.  Tương ứng với việc giảm số mũ nên có thể dẫn đến hiện tượng tr{n dưới số mũ. 91 Nội dung chương 2 2.1. C|c hệ đếm cơ bản 2.2. M~ hóa v{ lưu trữ dữ liệu trong m|y tính 2.3. Biểu diễn số nguyên 2.4. C|c phép to|n số học với số nguyên 2.5. Biểu diễn số thực 2.6. Biểu diễn kí tự 92 Biểu diễn kí tự trong máy tính 1. Bộ m~ ASCII (American Standard Code for Information Interchange) 2. Bộ m~ Unicode 93 1. Bộ mã ASCII  Do ANSI (American National Standard Institute) thiết kế  L{ bộ m~ 8 bit  m~ hóa được cho 28 = 256 kí tự, có m~ từ 0016  FF16, bao gồm:  128 kí tự chuẩn có m~ từ 0016  7F16  128 kí tự mở rộng có m~ từ 8016  FF16 94 HEXA 0 1 2 3 4 5 6 7 0 0 16 32 0 48 @ 64 P 80 ` 96 p 112 1 1 17 ! 33 1 49 A 65 Q 81 a 97 q 113 2 2 18 " 34 2 50 B 66 R 82 b 98 r 114 3 3 19 # 35 3 51 C 67 S 83 c 99 s 115 4 4 20 $ 36 4 52 D 68 T 84 d 100 t 116 5 5 21 % 37 5 53 E 69 U 85 e 101 u 117 6 6 22 & 38 6 54 F 70 V 86 f 102 v 118 7 7 23 ' 39 7 55 G 71 W 87 g 103 w 119 8 8 24 ( 40 8 56 H 72 X 88 h 104 x 120 9 9 25 ) 41 9 57 I 73 Y 89 i 105 y 121 A 10 26 * 42 : 58 J 74 Z 90 j 106 z 122 B 11 27 + 43 ; 59 K 75 [ 91 k 107 { 123 C 12 28 , 44 < 60 L 76 \ 92 l 108 | 124 D 13 29 - 45 = 61 M 77 ] 93 m 109 } 125 E 14 30 . 46 > 62 N 78 ^ 94 n 110 ~ 126 F 15 31 / 47 ? 63 O 79 - 95 o 111 127 95 a. Các kí tự chuẩn  95 kí tự hiển thị được: có m~ từ 2016 ÷ 7E16  26 chữ c|i hoa Latin 'A' ÷ 'Z' có m~ từ 4116 ÷ 5A16  26 chữ c|i thường Latin 'a' ÷ 'z' có m~ từ 6116 ÷ 7A16  10 chữ số thập ph}n '0' ÷ '9' có m~ từ 3016 ÷ 3916  C|c dấu c}u: . , ? ! : ;  C|c dấu phép to|n: + - * /  Một số kí tự thông dụng: #, $, &, @, ...  Dấu c|ch (m~ l{ 2016)  33 m~ điều khiển: m~ từ 0016 ÷ 1F16 và 7F16 dùng để m~ hóa cho c|c chức năng điều khiển 96 Điều khiển định dạng BS Backspace - Lùi lại một vị trí: Ký tự điều khiển con trỏ lùi lại một vị trí. HT Horizontal Tab - Tab ngang: Ký tự điều khiển con trỏ dịch tiếp một khoảng đã định trước. LF Line Feed - Xuống một dòng: Ký tự điều khiển con trỏ chuyển xuống dòng dưới. VT Vertical Tab - Tab đứng: Ký tự điều khiển con trỏ chuyển qua một số dòng đã định trước. FF Form Feed - Đẩy sang đầu trang: Ký tự điều khiển con trỏ di chuyển xuống đầu trang tiếp theo. CR Carriage Return - Về đầu dòng: Ký tự điều khiển con trỏ di chuyển về đầu dòng hiện hành. 97 Điều khiển truyền số liệu SOH Start of Heading - Bắt đầu tiêu đề: Ký tự đánh dấu bắt đầu phần thông tin tiêu đề. STX Start of Text - Bắt đầu văn bản: Ký tự đánh dấu bắt đầu khối dữ liệu văn bản và cũng chính là để kết thúc phần thông tin tiêu đề. ETX End of Text - Kết thúc văn bản: Ký tự đánh dấu kết thúc khối dữ liệu văn bản đã được bắt đầu bằng STX. EOT End of Transmission - Kết thúc truyền: Chỉ ra cho bên thu biết kết thúc truyền. ENQ Enquiry - Hỏi: Tín hiệu yêu cầu đáp ứng từ một máy ở xa. ACK Acknowledge - Báo nhận: Ký tự được phát ra từ phía thu báo cho phía phát biết rằng dữ liệu đã được nhận thành công. NAK Negative Aknowledge - Báo phủ nhận: Ký tự được phát ra từ phía thu báo cho phía phát biết rằng việc nhận dữ liệu không thành công. SYN Synchronous / Idle - Đồng bộ hóa: Được sử dụng bởi hệ thống truyền đồng bộ để đồng bộ hoá quá trình truyền dữ liệu. ETB End of Transmission Block - Kết thúc khối truyền: Chỉ ra kết thúc khối dữ liệu được truyền. 98 Điều khiển phân cách thông tin FS File Separator - Ký hiệu phân cách tập tin: Đánh dấu ranh giới giữa các tập tin. GS Group Separator - Ký hiệu phân cách nhóm: Đánh dấu ranh giới giữa các nhóm tin (tập hợp các bản ghi). RS Record Separator - Ký hiệu phân cách bản ghi: Đánh dấu ranh giới giữa các bản ghi. US Unit Separator - Ký hiệu phân cách đơn vị: Đánh dấu ranh giới giữa các phần của bản ghi. 99 Các kí tự điều khiển khác NUL Null - Ký tự rỗng: Được sử dụng để điền khoảng trống khi không có dữ liệu. BEL Bell - Chuông: Được sử dụng phát ra tiếng bíp khi cần gọi sự chú ý của con người. SO Shift Out - Dịch ra: Chỉ ra rằng các mã tiếp theo sẽ nằm ngoài tập ký tự chuẩn cho đến khi gặp ký tự SI. SI Shift In - Dịch vào: Chỉ ra rằng các mã tiếp theo sẽ nằm trong tập ký tự chuẩn. DLE Data Link Escape - Thoát liên kết dữ liệu: Ký tự sẽ thay đổi ý nghĩa của một hoặc nhiều ký tự liên tiếp sau đó. DC1 ÷ DC4 Device Control - Điều khiển thiết bị : Các ký tự dùng để điều khiển các thiết bị phụ trợ. CAN Cancel - Hủy bỏ: Chỉ ra rằng một số ký tự nằm trước nó cần phải bỏ qua. EM End of Medium - Kết thúc phương tiện: Chỉ ra ký tự ngay trước nó là ký tự cuối cùng có tác dụng với phương tiện vật lý. SUB Substitute - Thay thế: Được thay thế cho ký tự nào được xác định là bị lỗi. ESC Escape - Thoát: Ký tự được dùng để cung cấp các mã mở rộng bằng cách kết hợp với ký tự sau đó. DEL Delete - Xóa: Dùng để xóa các ký tự không mong muốn. 100 b. Các kí tự mở rộng  Đượ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 của IBM: được dùng trên m|y tính IBM-PC.  Bộ m~ ký tự mở rộng của Apple: được dùng trên m|y tính Macintosh.  C|c nh{ ph|t triển phần mềm tiếng Việt cũng đ~ thay đổi phần n{y để m~ ho| cho c|c ký tự riêng của chữ Việt, ví dụ như bộ m~ TCVN 5712. 101 2. Bộ mã Unicode  Do c|c h~ng m|y tính h{ng đầu thiết kế  L{ bộ m~ 16-bit  Được thiết ké cho đa ngôn ngữ, trong đó có tiếng Việt 102 Bài tập 1  Giả sử có c|c biến nhớ dưới đ}y chứa c|c số nguyên có dấu 8-bit với nội dung biểu diễn theo hệ 16 như sau: P = 3A Q = 7C R = DE S = FF H~y x|c định gi| trị của c|c biến nhớ đó dưới dạng số thập ph}n. 103 Bài tập 2  Giả sử có X thuộc kiểu số nguyên có dấu 16-bit, nó được g|n gi| trị dưới dạng thập ph}n bằng -1234. H~y cho biết nội dung của c|c byte nhớ chứa biến đó dưới dạng Hexa, biết rằng bộ nhớ lưu trữ theo kiểu đầu nhỏ (little-endian). 104 Bài tập 3  Giả sử có biến P chứa số nguyên có dấu 16 bit. Nội dung của biến P được cho trong bộ nhớ như sau: H~y x|c định gi| trị của biến P dưới dạng thập ph}n. 9D(16) 80(16) Địa chỉ tăng dần (Little-endian) 105 Bài tập 4  Giả sử có một biến số thực X được biểu diễn bằng số dấu chấm động theo chuẩn IEEE 754 dạng 32 bit, nó chiếm 4 byte trong bộ nhớ với nội dung được chỉ ra ở hình vẽ sau. Biết rằng bộ nhớ tổ chức theo kiểu đầu nhỏ (little-endian), hãy x|c định gi| trị thập ph}n của số thực đó. 00(16) 80(16) Địa chỉ tăng dầnD9(16) C3(16) 106 Bài tập 5  Giả sử có biến X thuộc kiểu số dấu chấm động theo chuẩn IEEE 754 dạng 32 bit. Nó được g|n gi| trị dưới dạng thập ph}n bằng -124.125 v{ lưu trữ v{o bộ nhớ bắt đầu từ byte nhớ có địa chỉ l{ 200. H~y cho biết nội dung của c|c byte nhớ chứa biến đó dưới dạng Hexa, biết rằng bộ nhớ lưu trữ theo kiểu đầu nhỏ (little- endian).

Các file đính kèm theo tài liệu này:

  • pdfchuong2_bieudiendulieu_sohocmaytinh_3844.pdf
Tài liệu liên quan