Введение в компьютерные науки. 6-е издание

Дж. Гленн Брукшир

Глава нулевая. Введение
0.1. Знакомство с алгоритмами
0.2. Происхождение вычислительных машин
0.3. Эволюция компьютерных наук
0.4. Роль абстракции
0.5. Этические, социальные и правовые аспекты
Социальные и общественные вопросы
Рекомендуемая литература
АРХИТЕКТУРА МАШИН
Глава первая. Хранение данных
1.1. Хранение битов
1.2. Основная память
1.3. Массовая память
1.4. Представление информации в виде
комбинации двоичных разрядов
1.5. Двоичная система счисления
1.6. Представление целых чисел
1.7. Представление дробных значений
1.8. Сжатие данных
1.9. Ошибки при передаче информации
Упражнения
Общественные и социальные вопросы
Рекомендуемая литература
Дополнительная литература
Глава вторая. Обработка данных
2.1. Центральный процессор
2.2. Концепция хранимой программы
2.3. Выполнение программы
2.4. Арифметические и логические команды
2.5. Взаимодействие с другими устройствами
2.6. Другие типы архитектуры компьютеров
Упражнения
Социальные и общественные вопросы
Рекомендуемая литература
Дополнительная литература
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ
Глава третья. Операционные системы и сети
3.1. Эволюция операционных систем
3.2. Архитектура операционных систем
3.3. Координация действий машины
3.4. Организация конкуренции между
процессами
3.5. Сети
3.6. Сетевые протоколы
3.7. Безопасность
Упражнения
Общественные и социальные вопросы
Рекомендуемая литература
Дополнительная литература
Глава четвертая. Алгоритмы
4.1. Понятие алгоритма
4.2. Представление алгоритма
4.3. Создание алгоритма
4.4. Итерационные структуры
4.5. Рекурсивные структуры
4.6. Эффективность и правильность
Упражнения
Общественные и социальные вопросы
Рекомендуемая литература
Глава пятая. Языки программирования
5.1. Исторический обзор
5.2. Концепции традиционного
программирования
5.3. Процедуры и функции
5.4. Реализация языка
5.5. Объектно-ориентированное
программирование
5.6. Программирование параллельных
процессов
5.7. Декларативное программирование
Упражнения
Общественные и социальные вопросы
Рекомендуемая литература
Дополнительная литература
Глава шестая. Технология разработки
программного обеспечения
6.1. Предмет технологии разработки
программного обеспечения
6.2. Жизненный цикл программного
обеспечения
6.3. Модульность
6.4. Методы проектирования
6.5. Тестирование
6.6. Документирование
6.7. Право собственности и ответственность за
создаваемое программное обеспечение
Упражнения
Общественные и социальные вопросы
Рекомендуемая литература
Дополнительная литература
ОРГАНИЗАЦИЯ ДАННЫХ
Глава седьмая. Структуры данных
7.1. Массивы
7.2. Списки
7.3. Стеки
7.4. Очереди
7.5. Древовидные структуры
7.6. Специализированные типы данных
7.7. Указатели в машинном языке
Упражнения
Общественные и социальные вопросы
Рекомендуемая литература
Дополнительная литература
Глава восьмая. Файловые структуры
8.1. Роль операционной системы
8.2. Последовательные файлы
8.3. Текстовые файлы
8.4. Индексация
8.5. Хеширование
Упражнения
Общественные и социальные вопросы
Рекомендуемая литература
Глава девятая. Структуры баз данных
9.1. Общие понятия
9.2. Многоуровневый подход к реализации
баз данных
9.3. Реляционная модель
9.4. Объектно-ориентированные базы данных
9.5. Обеспечение целостности баз данных
9.6. Влияние технологий баз данных на общество
Упражнения
Общественные и социальные вопросы
Рекомендуемая литература
Дополнительная литература
ПОТЕНЦИАЛ АЛГОРИТМИЧЕСКИХ МАШИН
Глава десятая. Искусственный интеллект
10.1. Машины и интеллект
10.2. Распознавание изображений
10.3. Способность к рассуждению
10.4. Искусственные нейронные сети
10.5. Генетические алгоритмы
10.6. Приложения теории искусственного
интеллекта
10.7. Осмысливание последствий
Упражнения
Общественные и социальные вопросы
Рекомендуемая литература
Дополнительная литература
Глава одиннадцатая. Теория вычислений
11.1. Простейший язык программирования
11.2. Машины Тьюринга
11.3. Вычислимые функции
11.4. Невычислимые функции
11.5. Сложность задач
11.6. Криптография с использованием открытых
ключей
Упражнения
Общественные и социальные вопросы
Рекомендуемая литература
Дополнительная литература
ПРИЛОЖЕНИЯ
Приложение A. Код ASCII
Приложение Б. Электронные схемы обработки
чисел в двоичном дополнительном коде
Приложение В. Пример типичного машинного
языка
Архитектура машины
Машинный язык
Приложение Г. Примеры программ
Язык Ada
Язык C
Язык C++
Язык FORTRAN
Язык JAVA
Язык PASCAL
Приложение Д. Эквивалентность итеративных
и рекурсивных структур
Приложение Е. Ответы на вопросы для
самопроверки
Часть I
Часть II
Часть III
Часть IV
Предметный указатель