Đặt nền móng cho khoa học máy tính và xử lý thông tin. Định nghĩa chung về khoa học máy tính. Nhiệm vụ chính của khoa học máy tính

Hướng dẫn sử dụng là Khóa học cơ bản Khoa học máy tính cho giáo dục phổ thông và giáo dục đặc biệt cơ sở giáo dục. Đặc điểm chính của môn học là: xây dựng chủ đề mới của môn khoa học máy tính, phù hợp với yêu cầu giai đoạn thông tin sự phát triển của xã hội và một cách tiếp cận mở rộng để xem xét các dòng nội dung chủ đề: lý thuyết, phương pháp luận, toán học, kỹ thuật, công nghệ, truyền thông và xã hội.
Sách hướng dẫn này tuân thủ các chương trình khóa học khoa học máy tính hiện tại và các yêu cầu về mức độ chuẩn bị của học sinh. Nó cũng có thể được sử dụng để chuẩn bị cho kỳ thi tuyển sinh hoặc để tự học.

Tất nhiên, mỗi người trong chúng ta đã hơn một lần nhận thấy rằng cùng một đối tượng và hiện tượng có thể được nghiên cứu bằng các ngành khác nhau. Vì vậy, chẳng hạn, trong vật lý, chúng ta bắt đầu nghiên cứu nguyên tử của các nguyên tố sau khi chúng ta đã làm quen với chúng trong các lớp hóa học. Khi nghiên cứu sự tương tác vật lý giữa các vật thể, chúng ta nhất thiết phải tính đến hình dạng của sự tương tác này và hiện tượng xảy ra. quá trình vật lý Chúng tôi thể hiện chúng bằng cách sử dụng các công thức mà chúng tôi đã học để viết trong các bài học toán.

Chúng tôi không ngạc nhiên khi cây trồng và động vật có ích không chỉ được coi là sinh học mà còn cả địa lý. Chúng tôi hiểu rằng các ngành khoa học và học thuật khác nhau có thể có nhiều điểm chung. Nhưng chúng ta cũng biết rằng mỗi ngành đều có một cái gì đó riêng - một cái gì đó đặc trưng và phân biệt nó với các ngành khoa học khác. Nên bắt đầu nghiên cứu một môn học mới bằng cách nêu bật những đặc điểm đặc biệt của nó và xác định vị trí riêng của nó trong hệ thống chung kiến thức khoa học.

Nội dung
Giới thiệu 8
I. Khoa học máy tính 8
II. Sự phát triển của khoa học máy tính như một khoa học 12
III. Đặc điểm khóa học 14
Chủ đề 1. Phát triển thông tin của xã hội 17
§ 1. Trao đổi thông tin đại chúng 17
§ 2. Các giai đoạn phát triển thông tin của xã hội 20
§ 3. Xã hội thông tin 27
§ 4. Tính năng xã hội thông tin 31
§ 5. Những mâu thuẫn của xã hội thông tin 38
Tóm tắt chủ đề 40
Câu hỏi và nhiệm vụ kiểm tra 41
Chủ đề 2. Trao đổi thông tin 44
§ 6. Phát triển ý tưởng trao đổi thông tin 44
§ 7. Năng lượng trao đổi thông tin 46
§ số 8. Thông tin liên lạc 48
§ 9. Mô hình trao đổi thông tin tổng quát 56
Tóm tắt chủ đề 63
Câu hỏi và nhiệm vụ kiểm tra 64
Chủ đề 3. Thông tin và tính chất của nó 66
§ 10. Dữ liệu trao đổi thông tin 66
§ 11. Thông tin 68
§ 12. Sơ lược lịch sử phát triển các ý tưởng về thông tin 76
§ 13. Các phương pháp thay thế để xác định thông tin 79
§ 14. Thuộc tính của thông tin 84
Tóm tắt chủ đề 94
Câu hỏi và nhiệm vụ kiểm tra 95
Chủ đề 4. Trao đổi thông tin trong hệ thống điều khiển 97
§ 15. Thực thể thông tin quản lý 97
§ 16. Phân loại hệ thống điều khiển 98
§ 17. Giao diện hệ thống điều khiển 105
Tóm tắt chủ đề 115
Câu hỏi và bài tập kiểm tra 116
Chủ đề 5. Cơ bản mô hình hóa đối tượng 119
§ 18. Các khái niệm cơ bản về mô hình hóa đối tượng 119
§ 19. Kết hợp các đối tượng 128
§ 20. Đối tượng vùng chứa và thuộc tính của chúng 133
§ 21. Nguyên tắc đánh địa chỉ đối tượng 137
§ 22. Cấu trúc dữ liệu đơn giản nhất 142
§ 23. Cấu trúc dữ liệu phức tạp 149
Tóm tắt chủ đề 155
Câu hỏi và bài tập kiểm tra 158
Chủ đề 6. Mã hóa và ghi thông tin 160
§ 24. Các khái niệm cơ bản về mã hóa và ghi thông tin 160
§ 25. Nguyên tắc mã hóa thông tin 164
§ 26. Cơ bản về mã hóa kỹ thuật số 171
Tóm tắt chủ đề 179
Câu hỏi và bài tập kiểm tra 181
Chuyên đề 7. Mã hóa số và văn bản 183
§ 27. Mã hóa số nguyên 183
§ 28. Mã hóa số thực 186
§ 29. Hệ thống ban đầu mã hóa văn bản 191
§ 30. Các chương trình mã hóa văn bản 8 bit trong nước 199
§ 31. Công nghệ mã hóa Unicode 201
Tóm tắt chủ đề 207
Câu hỏi và bài tập kiểm tra 208
Chuyên đề 8. Mã hóa ảnh số 210
§ 32. Cơ bản về mã hóa hình ảnh 211
§ 33. Mã hóa hình ảnh raster 216
Tóm tắt chủ đề 226
Câu hỏi và bài tập kiểm tra 227
Chủ đề 9. Mã hóa thông tin đa phương tiện 230
§ 34. Mã hóa bản ghi âm 230
§ 35. Mã hóa các đoạn ghi hình 242
§ 36. Nén dữ liệu trong quá trình mã hóa 244
§ 37. Phương pháp nén dữ liệu có thể đảo ngược 250
§ 38. Phương pháp nén dữ liệu không thể đảo ngược 252
§ 39. Luồng dữ liệu nén 256
Tóm tắt chủ đề 258
Câu hỏi và bài tập kiểm tra 260
Chuyên đề 10. Logic nhị phân và thiết kế mạch cơ bản 263
§ 40. Nguyên tắc cơ bản của logic toán học 264
§ 41. Các phép toán cơ bản của logic toán học 265
§ 42. Logic nhị phân 270
§ 43. Công nghệ logic nhị phân 272
§ 44. Logic nhị phân trong đô họa may tinh 278
§ 45. Giới thiệu thiết kế mạch 281
§ 46. Cổng logic 284
§ 47. Kết hợp các cổng logic 287
§ 48. Cơ sở phần tử công nghệ máy tính 290
Tóm tắt chủ đề 294
Câu hỏi và bài tập kiểm tra 296
Chủ đề 11. Phần cứng PC 300
§ 49. Kiến trúc của máy tính cá nhân 300
§ 50. Mở rộng máy tính cá nhân 307
§ 51. Thiết bị máy tính cá nhân 311
Tóm tắt chủ đề 313
Câu hỏi và nhiệm vụ kiểm tra 313
Chủ đề 12. Phần mềm máy tính 315
§ 52. Cấu trúc phần mềm hệ thống máy tính 315
§ 53. Các loại chương trình ứng dụng 319
§ 54. hệ điều hành máy tính 328
§ 55. Các giai đoạn phát triển của hệ điều hành 330
§ 56. Triển vọng phát triển của hệ điều hành 337
Tóm tắt chủ đề 340
Câu hỏi và nhiệm vụ kiểm tra 341
Chủ đề 13. Thông tin Công nghệ Windows 343
§ 57. Tính năng chức năng hệ điều hành 343
§ 58. Đối tượng Mô hình Windows 345
§ 59. Mô hình thông tin Quản lý Windows 348
§ 60. Ảo Bộ nhớ Windows 354
§ 61. Sử dụng nhiều lần Mã chương trình 356
§ 62. Khái quát hóa tài nguyên phần mềm Windows 358
§ 63. Bộ đệm trao đổi dữ liệu 361
Tóm tắt chủ đề 363
Câu hỏi và bài tập kiểm tra 365
Chủ đề 14. Công nghệ quản lý tài liệu điện tử 367
§ 64. Email và tài liệu 367
§ 65. Mô hình thông tin tài liệu điện tử 373
§ 66. Công nghệ thông tin quản lý văn bản điện tử 376
Tóm tắt chủ đề 380
Câu hỏi và bài tập kiểm tra 382
Chuyên đề 15. Tự động hóa công việc với văn bản 384
§ 67. Đăng ký văn bản điện tử 384
§ 68. Đoạn văn bản, chức năng và tính chất của chúng 389
§ 69. Lập danh sách, hồ sơ và bảng biểu 394
§ 70. Tương tác của hình ảnh với văn bản 399
§ 71. Biểu diễn các đối tượng phi văn bản trong tài liệu 402
§ 72. Sơ đồ số 406
§ 73. Tự động hóa luồng tài liệu 410
§ 74. Sử dụng mẫu văn bản 416
§ 75. Công nghệ soạn thảo hồ sơ sáp nhập 420
Tóm tắt chủ đề 423
Câu hỏi và bài tập kiểm tra 425

Tải xuống miễn phí sách điện tử V. định dạng thuận tiện, xem và đọc:
Tải sách Tin học đại cương, Ấn bản mới, Simonovich S.V., 2008 - fileskachat.com, tải nhanh và miễn phí.

Khoa học máy tính nói chung. Phiên bản mới. Simonovich S.V.

Petersburg: 2008. - 4 28 Với.

Sách hướng dẫn này là khóa học khoa học máy tính cơ bản dành cho giáo dục phổ thông và các cơ sở giáo dục đặc biệt. Các đặc điểm chính của khóa học là: một công thức mới về chủ đề khoa học máy tính, phù hợp với yêu cầu của giai đoạn thông tin phát triển xã hội và cách tiếp cận mở rộng để xem xét các dòng nội dung chủ đề: lý thuyết, phương pháp, toán học, kỹ thuật, công nghệ, truyền thông và xã hội.

Sách hướng dẫn này tuân thủ các chương trình khóa học khoa học máy tính hiện tại và các yêu cầu về mức độ chuẩn bị của học sinh. Nó cũng có thể được sử dụng để chuẩn bị cho kỳ thi tuyển sinh hoặc để tự học.

Định dạng: pdf

Kích cỡ: 48MB

Tải xuống: yandex.disk

Nội dung
Giới thiệu 8
I. Khoa học máy tính 8
II. Sự phát triển của khoa học máy tính như một khoa học 12
III. Đặc điểm khóa học 14
Chủ đề 1. Phát triển thông tin của xã hội 17
§ 1. Trao đổi thông tin đại chúng 17
§ 2. Các giai đoạn phát triển thông tin của xã hội 20
§ 3. Xã hội thông tin 27
§ 4. Đặc điểm của xã hội thông tin 31
§ 5. Những mâu thuẫn của xã hội thông tin 38
Tóm tắt chủ đề 40
Câu hỏi và nhiệm vụ kiểm tra 41
Chủ đề 2. Trao đổi thông tin 44
§ 6. Phát triển ý tưởng trao đổi thông tin 44
§ 7. Năng lượng trao đổi thông tin 46
§ 8. Thông tin truyền thông 48
§ 9. Mô hình trao đổi thông tin tổng quát 56
Tóm tắt chủ đề 63
Câu hỏi và nhiệm vụ kiểm tra 64
Chủ đề 3. Thông tin và tính chất của nó 66
§ 10. Dữ liệu trao đổi thông tin 66
§ 11. Thông tin 68
§ 12. Sơ lược lịch sử phát triển các ý tưởng về thông tin 76
§ 13. Các phương pháp thay thế để xác định thông tin 79
§ 14. Thuộc tính của thông tin 84
Tóm tắt chủ đề 94
Câu hỏi và nhiệm vụ kiểm tra 95
Chủ đề 4. Trao đổi thông tin trong hệ thống quản lý 97
§ 15. Bản chất thông tin của quản lý 97
§ 16. Phân loại hệ thống điều khiển 98
§ 17. Giao diện hệ thống điều khiển 105
Tóm tắt chủ đề 115
Câu hỏi và bài tập kiểm tra 116
Chuyên đề 5. Cơ bản về mô hình hóa đối tượng 119
§ 18. Các khái niệm cơ bản về mô hình hóa đối tượng 119
§ 19. Kết hợp các đối tượng 128
§ 20. Đối tượng vùng chứa và thuộc tính của chúng 133
§ 21. Nguyên tắc đánh địa chỉ đối tượng 137
§ 22. Cấu trúc dữ liệu đơn giản nhất 142
§ 23. Cấu trúc dữ liệu phức tạp 149
Tóm tắt chủ đề 155
Câu hỏi và bài tập kiểm tra 158
Chủ đề 6. Mã hóa và ghi thông tin 160
§ 24. Các khái niệm cơ bản về mã hóa và ghi thông tin 160
§ 25. Nguyên tắc mã hóa thông tin 164
§ 26. Cơ bản về mã hóa kỹ thuật số 171
Tóm tắt chủ đề 179
Câu hỏi và bài tập kiểm tra 181
Chuyên đề 7. Mã hóa số và văn bản 183
§ 27. Mã hóa số nguyên 183
§ 28. Mã hóa số thực 186
§ 29. Hệ thống mã hóa văn bản ban đầu 191
§ 30. Các sơ đồ mã hóa văn bản 8 bit trong nước.... 199
§ 31. Công nghệ mã hóa Unicode 201
Tóm tắt chủ đề 207
Câu hỏi và bài tập kiểm tra 208
Chuyên đề 8. Mã hóa ảnh số 210
§ 32. Cơ bản về mã hóa hình ảnh 211
§ 33. Mã hóa ảnh raster 216
Tóm tắt chủ đề 226
Câu hỏi và bài tập kiểm tra 227
Chủ đề 9. Mã hóa thông tin đa phương tiện 230
§ 34. Mã hóa bản ghi âm 230
§ 35. Mã hóa các đoạn ghi hình 242
§ 36. Nén dữ liệu trong quá trình mã hóa 244
§ 37. Phương pháp nén dữ liệu có thể đảo ngược 250
§ 38. Phương pháp nén dữ liệu không thể đảo ngược 252
§ 39. Luồng dữ liệu nén 256
Tóm tắt chủ đề 258
Câu hỏi và bài tập kiểm tra 260
Chuyên đề 10. Logic nhị phân và thiết kế mạch cơ bản 263
§ 40. Nguyên tắc cơ bản của logic toán học 264
§ 41. Các phép toán cơ bản của logic toán học 265
§ 42. Logic nhị phân 270
§ 43. Công nghệ logic nhị phân 272
§ 44. Logic nhị phân trong đồ họa máy tính 278
§ 45. Giới thiệu thiết kế mạch 281
§ 46. Cổng logic 284
§ 47. Kết hợp các cổng logic 287
§ 48. Cơ sở cơ bản của công nghệ máy tính 290
Tóm tắt chủ đề 294
Câu hỏi và bài tập kiểm tra 296
Chủ đề 11. Phần cứng PC 300
§ 49. Kiến trúc của máy tính cá nhân 300
§ 50. Mở rộng máy tính cá nhân 307
§ 51. Thiết bị máy tính cá nhân 311
Tóm tắt chủ đề 313
Câu hỏi và nhiệm vụ kiểm tra 313
Chủ đề 12. Phần mềm máy tính 315
§ 52. Cấu trúc phần mềm hệ thống máy tính 315
§ 53. Các loại chương trình ứng dụng 319
§ 54. Hệ điều hành máy tính 328
§ 55. Các giai đoạn phát triển của hệ điều hành 330
§ 56. Triển vọng phát triển của hệ điều hành 337
Tóm tắt chủ đề 340
Câu hỏi và nhiệm vụ kiểm tra 341
Chủ đề 13. Công nghệ thông tin Windows 343
§ 57. Đặc điểm chức năng của hệ điều hành 343
§ 58. Mô hình đối tượng Windows 345
§ 59. Mô hình thông tin quản lý Windows 348
§ 60. Bộ nhớ ảo Windows 354
§ 61. Tái sử dụng mã chương trình 356
§ 62. Khái quát hóa phần mềm Tài nguyên Windows 358
§ 63. Bộ đệm trao đổi dữ liệu 361
Tóm tắt chủ đề 363
Câu hỏi và bài tập kiểm tra 365
Chuyên đề 14. Công nghệ quản lý văn bản điện tử 367
§ 64. Tin nhắn và tài liệu điện tử 367
§ 65. Mô hình thông tin văn bản điện tử 373
§ 66. Công nghệ thông tin quản lý văn bản điện tử 376
Tóm tắt chủ đề 380
Câu hỏi và bài tập kiểm tra 382
Chuyên đề 15. Tự động hóa công việc với văn bản 384
§ 67. Đăng ký văn bản điện tử 384
§ 68. Đoạn văn bản, chức năng và thuộc tính của chúng 389
§ 69. Lập danh sách, hồ sơ và bảng biểu 394
§ 70. Tương tác của hình ảnh với văn bản 399
§ 71. Biểu diễn các đối tượng phi văn bản trong tài liệu 402
§ 72. Sơ đồ số 406
§ 73. Tự động hóa luồng tài liệu 410
§ 74. Sử dụng mẫu văn bản 416
§ 75. Công nghệ soạn thảo hồ sơ sáp nhập 420
Tóm tắt chủ đề 423
Câu hỏi và bài tập kiểm tra 425

BỘ GIÁO DỤC VÀ KHOA HỌC LIÊN BANG NGA Ngân sách nhà nước liên bang cơ sở giáo dục cao hơn giáo dục nghề nghiệp"ĐẠI HỌC NGHIÊN CỨU QUỐC GIA TOMSK POLYTECHNIC" I.E. KHOA HỌC MÁY TÍNH Mamonova Tin học tổng hợp. Khái niệm cơ bản về ngôn ngữ C++ được Hội đồng Biên tập và Xuất bản Tomsk giới thiệu làm sách giáo khoa Đại học Bách khoa Nhà xuất bản Đại học Bách khoa Tomsk 2011 BBK 32.973.2я73 UDC 681.3(075.8) M22 Mamonova T.E. Khoa học máy tính. Khoa học máy tính nói chung. Cơ bản về ngôn ngữ C++: M22 hướng dẫn/ I E. Mamonova; Đại học Bách khoa Tomsk. – Tomsk: Nhà xuất bản Đại học Bách khoa Tomsk, 2011. – 206 tr. Trong ấn bản của tác giả Sách giáo khoa trình bày ngắn gọn các vấn đề lý thuyết của khóa học Khoa học Máy tính, bao gồm các định nghĩa cơ bản và các công nghệ cơ bản về mã hóa và lập trình thông tin. Các điều khoản quan trọng nhất để lập trình bằng ngôn ngữ cấp cao C++ được nêu bật. Với mỗi chủ đề được trình bày một số lượng lớn nhiệm vụ đào tạo, tài liệu tham khảo bao gồm. Sách được biên soạn tại Khoa Hệ thống điều khiển máy tính tích hợp, phù hợp với chương trình bộ môn và dành cho sinh viên các cơ sở giáo dục đang theo hướng 220700 “Tự động hóa” quy trình công nghệ và sản xuất." BBK 32.973.2ya73 UDC 681.3(075.8) Người phản biện Tiến sĩ Khoa học Kỹ thuật, Giáo sư Khoa Tích hợp hệ thống máy tínhđiều khiển IR TPU A.M. Malyshenko Ứng viên Khoa học Kỹ thuật, Phó Giáo sư Bộ môn Hệ thống Điều khiển Máy tính Tích hợp của IK TPU V.N. Shklyar © FSBEI HPE NI TPU, 2011 © Mamonova T.E., 2011 © Design. Nhà xuất bản Đại học Bách khoa Tomsk, 2011 2 MỤC LỤC GIỚI THIỆU............................ ........................................................... ....................................6 1. CÁC VẤN ĐỀ CHUNG TRONG KHOA HỌC THÔNG TIN.................................................................. ...................... ..8 1.1. Định nghĩa khoa học máy tính.................................................................. ...................................... 8 1.2. Phương tiện kỹ thuật khoa học máy tính................................................ ............9 1.2.1. Lịch sử phát triển của công nghệ máy tính.................................................. ......................................9 1.2.2. Các thế hệ máy tính.................................................................. .................................................... .....11 1.2 .3. Kiến trúc máy tính................................................ .................................................... 13 1.2.3.1. Kiến trúc cổ điển Máy tính và nguyên lý von Neumann................................................................. ............ 13 1.2.3.2. Cải tiến và phát triển cấu trúc bên trong của máy tính.................................................. ............15 1.2 .3.3. Chu trình hoạt động chính của máy tính.................................................. ............................................ ............ 16 1.2.3.4. Hệ thống lệnh máy tính và các phương pháp truy cập dữ liệu.................................................. ............16 1.2.4. Các loại và mục đích của máy tính.................................................................. ......................................19 1.2.5. Nguyên lý mô-đun xương sống của cấu trúc máy tính.................................................. ........................................................... ......................21 1.2.6. Thiết bị ngoại vi và nội bộ................................................................. ......................22 1.2.6.1. CPU................................................ . ................................................................. .......23 1.2.6.2.RAM............................ ................................................................. ...................................................24 1.2. 6.3. Thiêt bị lưu trư................................................ ................................................................. .....25 1.2.6.4. Thiết bị đầu vào................................................................................. ................................................................. ......................26 1.2.6.6. Thiết bị truyền thông................................................................................. ............................................ ......................28 1.2.7. Nguyên tắc chương trìnhđiều khiển máy tính................................................................................. ...29 1.3. Virus máy tính................................................ ......................................29 1.3.1. Các dấu hiệu chính của virus xuất hiện trong hệ thống.................................................. ............ 31 1.3.2. Bảo vệ pháp lý chương trình và GPL.................................................................. .......... 32 1.4. Hệ điều hành và mạng................................................................................. ......................................34 1.4.1. Hệ điều hành................................................................. ...................... 34 1.4.1.1. Hệ điều hành MS DOS.................................................................................. ...................................................... ...35 1.4.1.2. Microsoft Windows................................................................................. ................................................................. ......................37 1.4.1.3.Hệ điều hànhLinux............ ............................................ ...................................39 1.5. Xử lý văn bản................................................ ...................................... 40 1.5. 1. Xử lý văn bản MS Word................................................................................. ...................... 41 1.6 Câu hỏi về khả năng tự chủ....................... ............................................. ....................53 2. CƠ SỞ SỐ HỌC XÂY DỰNG MÁY TÍNH............ ................................................................. ................................................................. .54 2.1. Đơn vị đo lường thông tin.................................................................. ......................54 2.2. Hệ thống số.................................................................................. .................................................... ............ 56 2.2.1. Hệ thống nhị phân tính toán................................................................................. .............................58 2.2.2. bát phân và hệ thập lục phân ký hiệu.................................60 2.2.3. Chuyển đổi số từ hệ số này sang hệ số khác.................................61 2.3. Mã hóa nhị phân thông tin................................................. ......................64 2.4 Câu hỏi rèn luyện tính tự chủ........... ................................................................. ......................................68 3. CƠ BẢN CỦA CÔNG NGHỆ LẬP TRÌNH NHIỆM VỤ.......... ................................................................. .................................70 3.1. Công nghệ lập trình và các giai đoạn phát triển chính của nó.................................................. ........................................................... ....70 3.2. Nguồn lỗi trong phần mềm................................................................. ...... 73 3 3.2.1. Năng lực trí tuệ của con người................................................................. ...................... 74 3.2.2. Bản dịch sai nguyên nhân gây ra lỗi phần mềm.................................................................. ............................................ .75 3.2.3 . Các phương pháp chính để khắc phục lỗi.................................................. .............78 3.3. Khái niệm thuật toán, tính chất của thuật toán.................................................. .............................78 3.4. Ngôn ngữ lập trình................................................ ......................................81 3.5. Lập trình có cấu trúc................................................................................. ......................................82 3.6. Lập trình hướng đối tượng.............................................. ...................... .84 3.6.1. Câu chuyện................................................. ................................................................. .......84 3.6.2. Các khái niệm cơ bản................................................ ............................................ .....86 3.6.3. Khái niệm cơ bản về OOP.................................................................. ...........................................86 3.6.4. Đặc điểm triển khai................................................................................. .................................... 89 3.6.5. Các phương pháp thiết kế chương trình nói chung.................................................. ........ 91 3.6.6. Các phương pháp liên quan.................................................................. ............................ 92 3.6.7. Hiệu năng của chương trình đối tượng.................................................................. ..........93 3.6.8. Những lời chỉ trích về OOP.................................................................. .................................................... .......... 95 3.6.9. Ngôn ngữ hướng đối tượng.................................................................. ..........96 3.7. Lập trình tổng quát................................................................. ...................................... 97 3.7.1. Cơ chế chung................................................................................. ....................................98 3.7.2 . Phương pháp thực hiện.................................................................................. ....................................99 3.7.3. Lập trình tổng quát trong C++................................................................. ...... 100 3.8 Câu hỏi tự chủ................................................................. ................................................................. .100 4. CƠ BẢN VỀ NGÔN NGỮ C++...................................... .................................................... ......101 4.1. Môi trường lập trình C++ điển hình.................................................. ......................103 4.2. Cấu trúc của một chương trình C++.................................................................. ......................................104 4.3. Công cụ cơ bản Ngôn ngữ C++................................................................................. .................................... 107 4.3.1. Cấu trúc của ngôn ngữ C++................................................................. ...................................................... ... 107 4.3.1.1. Các hằng số trong C++.................................................................. .................................................... ............108 4.3.2. Các kiểu dữ liệu trong C++.................................................................. ...................................................... 110 4.3.3. Biến................................................. ........................................................... ............ ..112 4.3.4. Các dấu hiệu hoạt động trong C++................................................................. ................................................................. .....114 4.3.5. Biểu thức................................................. ........................................................... ............116 4.3.6. Dữ liệu vào và ra................................................................................. ...................................................... 117 4.4. Các toán tử cơ bản của ngôn ngữ C++.................................................. ................................................................. .119 4.4.1. Thiết kế cơ bản lập trình có cấu trúc......................119 4.4.2. Toán tử “biểu thức”................................................................ ................................................................. ...119 4.4.3. Câu lệnh ghép.................................................................................. .............................................120 4.4.4. Các toán tử lựa chọn.................................................................. ....................................120 4.4.5 . Các toán tử vòng lặp.................................................................. ............................................. ...... 122 4.4.6. Các toán tử chuyển tiếp.................................................................. ...........................................124 4.5. Ví dụ về giải bài toán sử dụng toán tử C++ cơ bản.................................................. ............125 4.5.1. Lập trình nhánh.................................................................................. ....................................127 4.5.2. Lập trình vòng lặp số học.................................................................. ...................... 129 4.5.3. Các vòng lặp.................................................................................. ............................................. 131 4.5.4. Vòng lồng nhau................................................ ........................................................... ...... 133 4.6. Các loại tổng hợp dữ liệu trong C++................................................................................. ....................................134 4.6.1. Mảng................................................................................. ........................................................... ............134 4 Định nghĩa một mảng trong C/C++............ ................................................................. ............ 134 4.6.2 . Biển báo................................................................................. ........................................................... ............144 4.6.3. Liên kết................................................................................. ........................................................... ............149 4.6.4. Con trỏ và mảng................................................................................. ...........................................150 4.7. Thông tin ký tự và chuỗi.................................................................. .................................... 154 4.8. Các hàm trong C++................................................................................. .................................................... .......... 159 4.8.1. Khai báo và định nghĩa hàm................................................................. ............160 4.8.2. Nguyên mẫu hàm................................................................................. ........................................................... ..162 4.8.3. Các tham số chức năng.................................................................. ....................................163 4.8.4. Biến cục bộ và biến toàn cục.................................................................. ......................165 4.8.5. Hàm và mảng................................................................................. .......................................................... 166 4.8.5.1. Truyền mảng một chiều dưới dạng tham số hàm................................................. .......... .166 4.8.5.2. Truyền chuỗi dưới dạng tham số của hàm.................................................. ......................................169 4.8.5.3. Phát tin mảng đa chiềuđể hoạt động.................................................................. ..........169 4.8.6. Các hàm có giá trị tham số ban đầu (mặc định)................................................ ................................................................. ...................... 171 4.8.7. Các hàm nội tuyến................................................................................. ....................................171 4.8.8. Hàm có nhiều tham số thay đổi.................................................. ............ 172 4.8.9. Quá tải hàm................................................................................. ................................................................. ..174 4.8.10. Mẫu hàm................................................................................. .............................................175 4.8 .11. Con trỏ hàm................................................................................. ................................................................. ....177 4.8.12. Liên kết chức năng................................................................................. ............................................. 179 4.9. Kiểu dữ liệu do người dùng định nghĩa.................................................................. ......................................180 4.9.1. Đổi tên các loại................................................................................. ............................180 4.9.2. Chuyển khoản................................................................................. ........................................................... ........ 181 4.9.3. Cấu trúc................................................. ........................................................... ............181 4.9.5. Trường bit................................................................................. .................................................... ......... .184 4.9.6. Hiệp hội................................................................................. ........................................................... ............ 185 4.10. Cấu trúc động dữ liệu................................................. ............186 4.10.1. Danh sách một chiều tuyến tính.................................................................. ...................... 186 4.10.2. Làm việc với danh sách hai chiều.................................................................. ......................................190 4.11. Vào/ra trong C++................................................................................. ...................................................... ............ ..194 4.11.1. Truyền phát I/O................................................................. ........................................... 194 4.11.1.1 Mở đầu và đóng một luồng................................................................................. ................................................................. ..195 4.11.2. Tệp tiêu chuẩn và các chức năng làm việc với chúng.................................198 4.11.3. I/O tượng trưng................................................................................. ................................................................. .198 4.11.4. Chuỗi I/O................................................................................. ................................................................. ....199 4.11.5. Chặn I/O................................................................................. ...........................................200 4.11.6 . Định dạng I/O.................................................................. ....................................201 4.11.6.1 Truy cập trực tiếp vào tập tin ................................................................. ................................................................. .......202 4.11.6.2 Loại bỏ và thêm các thành phần trong một tập tin............. ........ ................................................. .. ......203 4.12 Câu hỏi để tự chủ................................................. . ......................204 TÀI LIỆU THAM KHẢO....... ................................................................. .................................... 206 PHỤ LỤC........... ................................................................. .................................................... ....207 5 GIỚI THIỆU Giáo trình này nhằm mục đích nghiên cứu môn “Tin học” dành cho sinh viên các cơ sở giáo dục học theo hình thức giáo dục cổ điển (KZF) và sử dụng công nghệ đào tạo từ xa (DET) theo hướng 220700 “Tự động hóa các quy trình công nghệ và sản xuất”. TRONG hướng dẫn này các tài liệu bổ sung cũng được trình bày có thể được sử dụng khi thực hiện trong phòng thí nghiệm và khóa học trong bộ môn “Tin học”. Sách hướng dẫn này thảo luận về các khái niệm và định nghĩa cơ bản của khoa học máy tính, cung cấp tài liệu để nghiên cứu các hệ thống số được sử dụng trong máy tính và giới thiệu ví dụ thực tế, sau khi giải được bài toán này học sinh sẽ chuẩn bị làm bài kiểm tra môn “Tin học”. Sách hướng dẫn này cũng cung cấp các ví dụ về cách viết chương trình bằng ngôn ngữ lập trình C++. Tất cả tài liệu được chia thành các phần, phần đầu tiên mô tả những điều cơ bản các vấn đề chung trong khoa học máy tính, bao gồm các vấn đề như lịch sử phát triển của công nghệ máy tính, cấu tạo và nguyên lý hoạt động của máy tính. Phần thứ hai trình bày tài liệu về thiết bị số học-logic, thiết bị điều khiển, bộ nhớ, thiết bị logic máy tính cũng như phần mềm máy tính. Phần thứ ba mô tả ngắn gọn các công nghệ lập trình chính, ưu điểm và nhược điểm của chúng. Phần cuối cùng được dành cho những điều cơ bản về lập trình bằng ngôn ngữ cấp độ cao C++, phần này nhằm mục đích giúp bạn làm quen với ngôn ngữ và có được các kỹ năng thực tế để thực hiện các bài tập trong phòng thí nghiệm và khóa học. Cẩm nang này được dành cho việc nghiên cứu về “Tin học” - một ngành khoa học mới và một ngành thông tin mới liên quan đến việc sử dụng những máy tính cá nhân và Internet. Sự phát triển của toàn bộ doanh nghiệp, giáo dục, công nghiệp và xã hội của các nhà khoa học, chính trị gia và doanh nhân phần lớn gắn liền với việc sử dụng rộng rãi các nguồn thông tin Internet và khả năng trí tuệ ngày càng tăng của máy tính. Loại công nghệ điện toán hiện đại phổ biến nhất đã trở thành máy tính cá nhân IBM PC. Vì những lý do này, sổ tay này sẽ xem xét các khả năng cơ bản của phần mềm máy tính cá nhân hiện đại nhất. máy tính IBM PC – Hệ điều hành Windows, cũng như trình soạn thảo văn bản Word. 6 Việc trình bày khoa học máy tính như một môn khoa học gắn liền với việc xem xét các vấn đề tổ chức tính toán và xử lý thông tin bằng máy tính và bên trong máy tính. Đặc điểm của khoa học máy tính kỷ luật học thuật là một hội thảo trên máy tính có thể được tổ chức tại trường đại học hoặc tại nhà. Để hoàn thành hội thảo như vậy, bạn phải có máy tính cá nhân hoặc quyền truy cập vào nó, cũng như gói cần thiết chương trình - soạn thảo văn bản, cơ sở dữ liệu, bảng tính v.v. Cẩm nang này được cấu trúc sao cho bạn có thể sử dụng nó để nghiên cứu khoa học máy tính ngay cả ở nhà bằng cách sử dụng máy tính cá nhân, và sau đó vượt qua bài kiểm tra bằng Internet (dành cho học sinh học bằng DOT). Khả năng này yêu cầu sự hiện diện của các gói phần mềm được liệt kê cùng với hệ điều hành, trình soạn thảo văn bản và hệ thống lập trình trên máy tính gia đình. 7 1. VẤN ĐỀ CHUNG TRONG KHOA HỌC THÔNG TIN 1.1. Định nghĩa khoa học máy tính Khoa học máy tính là khoa học kỹ thuật, hệ thống hóa các phương pháp tạo, lưu trữ, tái tạo, xử lý và truyền dữ liệu bằng công nghệ máy tính cũng như nguyên lý hoạt động của các công cụ này và phương pháp quản lý chúng. Khoa học máy tính - trẻ kỷ luật khoa học, nghiên cứu các vấn đề liên quan đến việc tìm kiếm, thu thập, lưu trữ, chuyển hóa và sử dụng thông tin một cách hiệu quả nhất nhiều lĩnh vực khác nhau hoạt động của con người. Về mặt di truyền, khoa học máy tính có liên quan đến công nghệ máy tính, hệ thống máy tính và mạng, vì chính máy tính mới có khả năng tạo ra. Lưu trữ và xử lý tự động thông tin với số lượng lớn đến mức mà cách tiếp cận khoa học có thể xử lý được. quá trình thông tin trở nên cần thiết và có thể. Hãy xem xét thành phần cốt lõi của khoa học máy tính hiện đại. Mỗi phần này có thể được coi là một ngành khoa học tương đối độc lập; mối quan hệ giữa chúng gần giống như giữa đại số, hình học và phân tích toán học trong toán học cổ điển - mặc dù chúng đều là những môn học độc lập nhưng chắc chắn chúng là những bộ phận của cùng một ngành khoa học. Khoa học máy tính lý thuyết– một phần của khoa học máy tính, bao gồm một phần của phần toán học. Nó dựa trên logic toán học và bao gồm các phần như lý thuyết về thuật toán và automata, lý thuyết thông tin và lý thuyết mã hóa, lý thuyết về ngôn ngữ hình thức và ngữ pháp, nghiên cứu hoạt động, v.v. Phần này của khoa học máy tính sử dụng phương pháp toán học nghiên cứu các quá trình xử lý thông tin. Công nghệ máy tính là một nhánh của khoa học máy tính trong đó các nguyên tắc xây dựng hệ thống máy tính. Đây không phải là về chi tiết kỹ thuật và mạch điện(điều này nằm ngoài ranh giới của khoa học máy tính), nhưng về các quyết định cơ bản ở cấp độ của cái gọi là kiến ​​trúc của hệ thống máy tính (máy tính), xác định thành phần của mục đích, chức năng và nguyên tắc tương tác của thiết bị. Ví dụ về các giải pháp cơ bản, cổ điển trong lĩnh vực này là kiến ​​trúc Neumann của máy tính thế hệ đầu tiên, kiến ​​trúc bus của máy tính thế hệ cũ và kiến ​​trúc xử lý thông tin song song (đa bộ xử lý). 8 Lập trình là hoạt động liên quan đến việc phát triển hệ thống phần mềm. Ví dụ, đây là việc tạo ra phần mềm hệ thống và tạo ra phần mềm ứng dụng. Trong số những hệ thống có sự phát triển của các ngôn ngữ lập trình và trình biên dịch mới cho chúng, sự phát triển của các hệ thống giao diện (ví dụ, ngôn ngữ nổi tiếng vỏ điều hànhHệ thống Windows). Phần mềm ứng dụng bao gồm các hệ thống xử lý văn bản, bảng tính và hệ thống quản lý cơ sở dữ liệu. 1.2. Phương tiện kỹ thuật của khoa học máy tính 1.2.1. Lịch sử phát triển của công nghệ máy tính Tất cả bắt đầu từ ý tưởng dạy máy đếm hoặc ít nhất là cộng các số nguyên có nhiều chữ số. Vào khoảng năm 1500, Leonardo da Vinci đã phát triển một bản phác thảo của một thiết bị cộng 13 bit, đây là nỗ lực đầu tiên để giải quyết vấn đề đã xảy ra với chúng ta. 1642 - Người Pháp Blaise Pascal (nhà vật lý, toán học, kỹ sư) chế tạo máy cộng 8 bit - nguyên mẫu của máy cộng được sử dụng cho đến giữa những năm 70 của thế kỷ 20. 1822 – Nhà toán học người Anh Charles Babbage đã thiết kế và dành gần 30 năm để chế tạo một cỗ máy, lúc đầu được gọi là “sự khác biệt” và sau đó là “phân tích”. Chiếc máy này chứa đựng những nguyên lý đã trở thành nền tảng cho công nghệ máy tính: 1) thực hiện tự động hoạt động; 2) đầu vào tự động chương trình (ghi trên thẻ đục lỗ); 3) sẵn có thiết bị đặc biệt(bộ nhớ) để lưu trữ dữ liệu. Dựa trên kỹ sư cơ khí những ý tưởng này không thể thực hiện được. 1944 – dưới sự lãnh đạo của Howard Aiken (nhà toán học và vật lý học người Mỹ), máy Mark 1 được ra mắt tại IBM (International Business Machines), lần đầu tiên thực hiện ý tưởng của Babbage. Các phần tử cơ khí (bánh xe đếm) được sử dụng để biểu diễn các con số và các phần tử cơ điện được sử dụng để điều khiển. 1945–1946 – dưới sự lãnh đạo của John Mauchly và Presper Eckert, máy tính điện tử (máy tính) ENIAC đầu tiên đã được tạo ra ở Hoa Kỳ. Nó đã sử dụng 18.000 ống chân không, năng lượng tiêu thụ là 150 kW. 1949 – máy tính lưu trữ chương trình (EDSAC) đầu tiên được chế tạo ở Anh. Nguyên tắc của chương trình được lưu trữ yêu cầu các chương trình phải được lưu trữ trong bộ nhớ của máy giống như cách thông tin gốc được lưu trữ trong đó. Ngày 9 tháng 9 năm 1951 – tại Liên Xô, dưới sự lãnh đạo của Sergei Aleksandrovich Lebedev, MESM, một máy đếm điện tử nhỏ, đã được tạo ra. 1964 - xuất hiện mạch tích hợp 1965 - chiếc máy tính mini đầu tiên Khi tạo ra máy tính, các chuyên gia từ nhiều lĩnh vực khác nhau được sử dụng - nhà toán học, nhà vật lý, kỹ sư, lập trình viên, v.v. Theo nghĩa này, khoa học máy tính được định nghĩa là một tập hợp các nguyên tắc nghiên cứu các đặc tính của thông tin, cũng như các quá trình truyền tải, tích lũy và xử lý thông tin bằng các phương tiện kỹ thuật. Một phần khoa học được xác định là giải quyết các vấn đề sử dụng công nghệ máy tính để xử lý thông tin. Ở Anh và Mỹ đây là Khoa học Máy tính (khoa học về công nghệ máy tính), ở Pháp – informatique (khoa học máy tính). Vào những năm 60, sự hình thành của khoa học máy tính diễn ra như một ngành khoa học tự nhiên cơ bản nghiên cứu các quá trình xử lý, truyền tải và tích lũy thông tin. Bộ môn này được tạo ra ở điểm giao thoa giữa khoa học chính xác và khoa học tự nhiên. Cốt lõi của khoa học máy tính là công nghệ thông tin. Công nghệ thông tin là một tập hợp các công cụ kỹ thuật và phần mềm với sự trợ giúp của thông tin được xử lý. Vị trí trung tâm ở công nghệ thông tin chiếm máy tính. Những năm 1970 - tạo ra LSI (mạch tích hợp quy mô lớn). 1970 – một chương trình tự sao chép được tạo ra cho một trong những chương trình đầu tiên mạng máy tính– ARPnet. Chương trình Creepeer, được cho là do Bob Thomas viết, đã lan truyền trên Internet, tiết lộ diện mạo của nó với thông báo "TÔI LÀ MỘT CREEPER... HÃY BẮT TÔI NẾU BẠN CÓ THỂ." 1971 - chiếc máy vi tính đầu tiên Kenback1 được tạo ra 1972 - Chuyên gia máy tính 31 tuổi lập trình hệ thống từ Bell Labs, Dennis Ritchie đã phát triển ngôn ngữ lập trình C. 1972 – “Ghi chú về lập trình có cấu trúc” của Edsger Dykstra được xuất bản, bao gồm một mô tả tuyệt vời về các ý tưởng chính của lập trình có cấu trúc 1973 – Chuyên gia lập trình người Thụy Sĩ Niklaus Wirth đã xuất bản “Truyền thông đã sửa đổi”, trong đó tiêu chuẩn xác định chính xác ngôn ngữ Pascal. Phong cách chặt chẽ của ngôn ngữ Pascal đã được những người theo lập trình có cấu trúc nhiệt tình chấp nhận. 1975 là năm Microsoft được thành lập. 1977 - chiếc máy vi tính đầu tiên của Wozniak và Jobs, được Apple phát hành. 1980 – thành lập CPU trên một con chip silicon. 10