intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Các vấn đề cơ sở của khoa học máy tính: Chương 3 - Tô Oai Hùng

Chia sẻ: Minh Anh | Ngày: | Loại File: PDF | Số trang:42

83
lượt xem
7
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Các vấn đề cơ sở của khoa học máy tính - Chương 3: Tổ chức máy tính" cung cấp cho người học các kiến thức: Kiến trúc von Neumann, biểu diễn dữ liệu, chiều dài từ của máy tính, dạng dữ liệu nguyên, dạng dữ liệu thực, dạng ký tự, CPU/ALU, tập lệnh, bộ nhớ, nhập/xuất dữ liệu. Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Các vấn đề cơ sở của khoa học máy tính: Chương 3 - Tô Oai Hùng

  1. Chương 3: TỔ CHỨC MÁY TÍNH
  2. Nội Dung 1. Kiến trúc von Neumann. 2. Biểu diễn dữ liệu. 3. Chiều dài từ của máy tính. 4. Dạng dữ liệu nguyên. 5. Dạng dữ liệu thực. 6. Dạng ký tự. 7. CPU / ALU. 8. Tập lệnh. 9. Bộ nhớ. 10. Nhập / Xuất . 2 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  3. Kiến Trúc Von Neumann • Hầu hết các máy tính ngày nay hoạt động dựa vào “kiến trúc von Neumann”. Ý tưởng chính của kiến trúc này là chương trình và dữ liệu được lưu trữ trong bộ nhớ máy tính. John von Neumann đã đưa ra ý tưởng này vào năm 1945. • Kiến trúc von Neumann cũng được gọi là “máy tính có chương trình được lưu trữ - stored program computer”. Các bước (lệnh) của chương trình được lưu trữ trong bộ nhớ máy tính và chu kỳ thao tác của máy sẽ lấy bước kế tiếp (lệnh để thực thi) từ bộ nhớ, hoàn thành thao tác này và lấy bước kế tiếp. 3 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  4. Kiến Trúc Von Neumann Quá trình này được lặp lại cho đến khi máy tính gặp lệnh “dừng - halt”. • Có 3 thành phần chủ yếu trong máy tính von Neumann. Bộ nhớ là nơi chứa chương trình và dữ liệu. Đơn vị xử lý trung tâm (central processing unit - CPU) truy xuất chương trình và dữ liệu trong bộ nhớ và thực thi chúng. Đơn vị nhập/xuất truy xuất các thiết bị nhập và xuất dữ liệu. 4 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  5. Biểu Diễn Dữ Liệu • Chúng ta thường sử dụng các số được biểu diễn trong “cơ số 10 - base 10” – hệ thập phân. Có lẻ cơ số này dựa trên ý tưởng là chúng ta có 10 ngón tay. • Ví dụ: 427 = 4 * 102 + 2 * 101 + 7 * 100 • Chúng ta nói rằng số được biểu diễn trong cơ số 10 bởi vì các ký số của số đó được nhân với luỹ thừa của 10. • Máy tính sử dụng cơ số 2, bởi vì điều này sẽ làm cho dễ dàng trong việc xây dựng phần cứng khi máy tính chỉ dựa trên hai trạng thái on và off (1 và 0). 5 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  6. Biểu Diễn Dữ Liệu • Cơ số 2 cũng được gọi là “hệ nhị phân - binary number system”. Các ký số (bit) của một số trong hệ nhị phân được nhân với luỹ thừa của 2. Ví dụ, tính giá trị thập phân (cơ số 10) của số nhị phân 10011010: 10011010 = 27 + 24 + 23 + 21 = 154 • Phép cộng trên hệ nhị phân: 0 + 0 = 0 0 + 1 = 1 1 + 1 = 10 (nhớ 1 - bit bên trái nhất) • Ví dụ, cộng hai số nhị phân 1100 và 0110: 1100 0110 10010 6 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  7. Chiều Dài Từ Của Máy Tính • Mỗi máy tính khác nhau có thể truy xuất cùng lúc số bit khác nhau. Ví dụ, một máy tính có thể truy xuất 8 bit cùng lúc được gọi là “máy tính 8 bit”. Nói cách khác, máy tính đó có “chiều dài từ - word size” là 8 bit. • Máy tính PC đầu tiên của IBM sử dụng bộ xử lý 8088 của Intel có bus dữ liệu là 8 bit, nghĩa là nó có thể đọc/ghi 8 bit dữ liệu cùng lúc với thiết bị ngoại vi. • Ngày nay, hầu hết các máy tính có chiều dài từ là 32 hay 64 bit. 7 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  8. Định Dạng Số Nguyên • Cho đến bây giờ, chúng ta chỉ thảo luận các số nguyên dương. Máy tính cũng cần thao tác với các số nguyên có dấu và cả số thực. • Để lưu trữ số có dấu, bit bên trái nhất (msb) được sử dụng làm bit dấu. Bit này có giá trị 0 nếu là số dương và 1 nếu là số âm. • Số nguyên âm được biểu diễn bằng cách lấy bù 2 (two’s complement) của số dương tương ứng. Để tính bù 2 của một số, đảo ngược các bit của số đó và cộng thêm 1. Ví dụ, bù 2 của 6 (00000110) trên máy tính 8 bit: 8 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  9. Định Dạng Số Nguyên 11111001 +00000001 11111010 (−6) • Chúng ta có thể kiểm tra lại giá trị trên bằng cách cộng với 6, kết quả sẽ là 0: 11111010 (−6) +00000110 (+6) 100000000 (0, bỏ bit bên trái nhất) 9 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  10. Định Dạng Số Thực • Biểu diễn số thực khó hơn số nguyên. Số thực gồm phần định trị (mantissa) và phần số mũ (exponent). • Phần định trị và phần số mũ có thể dương hoặc âm. Phần định trị lớn sẽ cho độ chính xác lớn, phần số mũ lớn sẽ cho miền trị lớn. • Trước đây vào thập niên 1980, các nhà sản xuất máy tính khác nhau đã sử dụng cách biểu diễn dữ liệu khác nhau. Vì vậy, chương trình và dữ liệu không tương thích trên các máy tính khác nhau. • Viện IEEE (Institute of Electrical and Electronic Engineers) đã đưa ra chuẩn để 10 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  11. Định Dạng Số Thực biểu diễn số dấu chấm động dạng nhị phân sử dụng 32 và 64 bit. • Số dấu chấm động 32 bit có dạng như sau: dấu số mũ định trị SEEEEEEEEmmmmmmmmmmmmmmmmmmmmmmm • Bit msb là bit dấu, 8 bit kế tiếp là số mũ của cơ số 2 và 23 bit còn lại là phần định trị. • Dấu của số mũ được kết hợp vào giá trị biểu diễn của nó. Vì lý do kỹ thuật, chuẩn IEEE không sử dụng bù 2 để biểu diễn số mũ âm mà sử dụng phương pháp khác. • Ví dụ để biểu diễn 8.5, đầu tiên là chuyển 11 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  12. Định Dạng Số Thực 8.5 về dạng nhị phân: 1000.1 • Theo chuẩn IEEE, chỉ có một ký số (bit) nằm bên trái dấu chấm. Do vậy, giá trị trên được viết lại: 1.0001 * 23 • Từ đây, chúng ta nhận ra số mũ của cơ số 2 là 3 và phần định trị là 0001. • Sự đặc tả chuẩn IEEE 32 bit sử dụng “độ lệch – bias” 127 ở phần số mũ (cách làm này không cần bit dấu riêng cho số mũ và làm cho việc so sánh các số mũ dễ dàng hơn là sử dụng bù 2, cũng làm cho dễ dàng thấy 12 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  13. Định Dạng Số Thực được giá trị thật của nó). Trong ví dụ của chúng ta, phần số mũ có giá trị nhị phân của 127 + 3 = 130 (10000010). • Từ các kết quả trên, biểu diễn nhị phân của 8.5 sẽ là: 01000001000010000000000000000000 • Tính toán với số thực đòi hỏi máy tính phải làm việc nhiều hơn là với số nguyên. Vì vậy, một số máy tính được tích hợp bộ xử lý dấu chấm động (floating-point processor) để tăng tốc độ tính toán. • Bài tập tại lớp: a) Hãy cho biết vì sao giá trị 13 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  14. Định Dạng Số Thực của độ lệch là 127 mà không phải là giá trị khác? b) Nếu giá trị của độ lệch là 127 thì miền trị của số mũ là bao nhiêu? 14 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  15. Định Dạng Ký Tự • Dữ liệu dùng cho chương trình ở dạng ký tự nhiều hơn dạng số. Tên, địa chỉ, tựa đề, … được biểu diễn bằng chuỗi ký tự. • Các ký tự được ánh xạ hay mã hoá thành các số nguyên. Có nhiều kiểu mã hoá như BCD (binary coded decimal), EBCDIC (extended BCD interchange coded). • Bộ mã ASCII (American Standard Code for Information Interchange) được đưa ra vào thập niên 1960 và trở thành bộ mã được ưa chuộng nhất. Ngày nay, Unicode được sử dụng phổ biến hơn bởi vì nó tương thích với bộ mã ASCII và cho phép mã hoá nhiều chữ 15 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  16. Định Dạng Ký Tự cái phức tạp hơn tiếng Nga, Trung Quốc và những ngôn ngữ khác. Chúng ta sẽ sử dụng bộ mã ASCII để minh hoạ cho ý tưởng mã hoá ký tự, khi nó vẫn còn được sử dụng rộng rãi và mô tả đơn giản hơn là dùng Unicode. • Trong bộ mã ASCII, mỗi ký tự được gán một giá trị nguyên 7 bit. Cho ví dụ, ‘A’ = 65 (1000001), ‘B’ = 66 (1000010), ‘C’ = 67 (1000011), … Bit thứ 8 trong byte ký tự được dùng như bit chẵn-lẻ (parity) để kiểm tra lỗi khi truyền thông tin hoặc mã hoá thành các ký tự dùng trong các phép toán, các ký tự có 16 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  17. Định Dạng Ký Tự dấu hoặc các ký tự trang trí. • Một số ký tự điều khiển cũng được định nghĩa trong bộ mã ASCII. Các ký tự điều khiển không hiển thị ra màn hình nhưng được sử dụng để điều khiển thiết bị. Cho ví dụ, ‘line feed - LF’ = 10 (0001010), ‘tab’ = 11 (0001011), ‘backspace’ = 8 (0001000), … • Để xuất chuỗi “Dog” và xuống dòng, một dãy các byte sau được gởi đi: 01000100 01101111 01100111 00001010 D o g LF • Tương tự, khi nhập dữ liệu từ bàn phím, bàn 17 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  18. Định Dạng Ký Tự phím sẽ gởi một dãy các giá trị nguyên tương ứng với các ký tự đã nhập. • Làm thế nào để một chương trình biết dãy bit nào là của số nguyên, ký tự hay dấu chấm động. Câu trả lời là chương trình sẽ dựa vào kiểu dữ liệu của các đối tượng phần mềm trong chương trình. 18 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  19. CPU/ALU • CPU (Central Processing Unit) là thành phần mà người ta nghĩ đến đầu tiên khi mô tả về máy tính. Một chu kỳ trong máy tính von Neumann là: - Nạp một lệnh từ bộ nhớ vào CPU. - Giải mã và thực thi lệnh đó. • Thực thi lệnh bao gồm thực hiện các phép tính số học hay luận lý và cũng là nạp hay lưu trữ dữ liệu trong bộ nhớ. • Khi thực thi lệnh xong, máy tính sẽ lấy lệnh tiếp theo từ bộ nhớ và thực thi lệnh đó. Quá trình trên tiếp tục cho đến khi CPU gặp lệnh dừng. 19 Các Vấn Đề Cơ Sở của KHMT ThS. GVC Tô Oai Hùng
  20. CPU/ALU • CPU gồm đơn vị điều khiển (control unit - CU), đơn vị số học và luận lý (arithmetic and logic unit - ALU) và các thanh ghi. • Đơn vị điều khiển chịu trách nhiệm duy trì đều đặn chu kỳ lấy và thực thi lệnh, ALU thực thi các phép toán số học, so sánh (>,
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2