Изд. дом «Вильямс», 2001. - 688 с.
Широта охвата материала действительно соответствует его названию. Ясность и последовательность изложения основ всех дисциплин сделали эту книгу ведущим учебником для множества учебных заведений. При освещении различных тем автор учитывал их естественное родство, отказавшись от концепции изложения материала в контексте определенного языка программирования. В результате ему удалось добиться сбалансированного представления различных тем, не искаженного перекосами, связанными с особенностями того или иного языка. Более того, свойственный Гленну Брукширу, ясный и доходчивый стиль изложения позволил ему представить самые сложные темы на вполне доступном для неподготовленного читателя языке, избегнув при этом его чрезмерного упрощения и выхолащивания. Эта книга будет полезна как будущим профессионалам в области компьютерных наук, так и самому широкому кругу специалистов в других областях науки, техники и бизнеса, нуждающихся в приобретении прочных основ компьютерной грамотности.
Характерные особенности:
- содержит новейший материал о сжатии данных, анализе алгоритмов, защите сетей, шаблонах проектирования, объектно-ориентированных базах данных, генетических алгоритмах и методах шифрования с открытым ключом;
- включает разделы, посвященные этическим, юридическим, общественным и социальным аспектам освещаемых тем, а также представляет подборку соответствующих вопросов в конце каждой главы;
- поддерживается специальный Web-узел (www.awlonline.com/ brookshear), содержащий дополнительный материал, который будет полезен как учащимся, так и преподавателям.
СОДЕРЖАНИЕ
Глава нулевая. Введение.
Знакомство с алгоритмами.
Происхождение вычислительных машин.
Эволюция компьютерных наук.
Роль абстракции.
Этические, социальные и правовые аспекты.
Социальные и общественные вопросы.
Рекомендуемая литература.
Архитектура машин
Глава первая. Хранение данных.
Хранение битов.
Основная память.
Массовая память.
Представление информации в виде комбинации двоичных разрядов.
Двоичная система счисления.
Представление целых чисел.
Представление дробных значений.
Сжатие данных.
Ошибки при передаче информации.
Упражнения.
Общественные и социальные вопросы.
Рекомендуемая литература.
Дополнительная литература.
Глава вторая. Обработка данных.
Центральный процессор.
Концепция хранимой программы.
Выполнение программы.
Арифметические и логические команды.
Взаимодействие с другими устройствами.
Другие типы архитектуры компьютеров.
Программное обеспечение.
Глава третья. Операционные системы и сети.
Эволюция операционных систем.
Архитектура операционных систем.
Координация действий машины.
Организация конкуренции между процессами.
Сети. Сетевые протоколы.
Безопасность.
Глава четвертая. Алгоритмы.
Понятие алгоритма.
Представление алгоритма.
Создание алгоритма.
Итерационные структуры.
Рекурсивные структуры.
Эффективность и правильность.
Глава пятая. Языки программирования.
Исторический обзор.
Концепции традиционного программирования.
Процедуры и функции.
Реализация языка.
Объектно-ориентированное программирование.
Программирование параллельных процессов.
Декларативное программирование.
Глава шестая. Технология разработки программного обеспечения.
Предмет технологии разработки программного обеспечения.
Жизненный цикл программного обеспечения.
Модульность.
Методы проектирования.
Тестирование.
Документирование.
Право собственности и ответственность за создаваемое программное обеспечение.
Организация данных.
Глава седьмая. Структуры данных.
Массивы.
Списки.
Стеки.
Очереди.
Древовидные структуры.
Специализированные типы данных.
Указатели в машинном языке.
Глава восьмая. Файловые структуры.
Роль операционной системы.
Последовательные файлы.
Текстовые файлы.
Индексация.
Хеширование.
Глава девятая. Структуры баз данных.
Общие понятия.
Многоуровневый подход к реализации баз данных.
Реляционная модель.
Объектно-ориентированные базы данных.
Обеспечение целостности баз данных.
Влияние технологий баз данных на общество.
Потенциал алгоритмических машин.
Глава десятая. Искусственный интеллект.
Машины и интеллект.
Распознавание изображений.
Способность к рассуждению.
Искусственные нейронные сети.
Генетические алгоритмы.
Приложения теории искусственного интеллекта.
Осмысливание последствий.
Глава одиннадцатая. Теория вычислений.
Простейший язык программирования.
Машины Тьюринга.
Вычислимые функции.
Невычислимые функции.
Сложность задач.
Криптография с использованием открытых ключей.
Приложения.
Приложение А. Код ASCII.
Приложение Б. Электронные схемы обработки чисел в двоичном дополнительном коде.
Приложение В. Пример типичного машинного языка.
- Архитектура машины
- Машинный язык
Приложение Г. Примеры программ.
- Язык Ada
- Язык С
- Язык C++
- Язык FORTRAN
- Язык JAVA
- Язык PASCAL
Приложение Д. Эквивалентность итеративных и рекурсивных структур.
Приложение Е. Ответы на вопросы для самопроверки.
Предметный указатель
Широта охвата материала действительно соответствует его названию. Ясность и последовательность изложения основ всех дисциплин сделали эту книгу ведущим учебником для множества учебных заведений. При освещении различных тем автор учитывал их естественное родство, отказавшись от концепции изложения материала в контексте определенного языка программирования. В результате ему удалось добиться сбалансированного представления различных тем, не искаженного перекосами, связанными с особенностями того или иного языка. Более того, свойственный Гленну Брукширу, ясный и доходчивый стиль изложения позволил ему представить самые сложные темы на вполне доступном для неподготовленного читателя языке, избегнув при этом его чрезмерного упрощения и выхолащивания. Эта книга будет полезна как будущим профессионалам в области компьютерных наук, так и самому широкому кругу специалистов в других областях науки, техники и бизнеса, нуждающихся в приобретении прочных основ компьютерной грамотности.
Характерные особенности:
- содержит новейший материал о сжатии данных, анализе алгоритмов, защите сетей, шаблонах проектирования, объектно-ориентированных базах данных, генетических алгоритмах и методах шифрования с открытым ключом;
- включает разделы, посвященные этическим, юридическим, общественным и социальным аспектам освещаемых тем, а также представляет подборку соответствующих вопросов в конце каждой главы;
- поддерживается специальный Web-узел (www.awlonline.com/ brookshear), содержащий дополнительный материал, который будет полезен как учащимся, так и преподавателям.
СОДЕРЖАНИЕ
Глава нулевая. Введение.
Знакомство с алгоритмами.
Происхождение вычислительных машин.
Эволюция компьютерных наук.
Роль абстракции.
Этические, социальные и правовые аспекты.
Социальные и общественные вопросы.
Рекомендуемая литература.
Архитектура машин
Глава первая. Хранение данных.
Хранение битов.
Основная память.
Массовая память.
Представление информации в виде комбинации двоичных разрядов.
Двоичная система счисления.
Представление целых чисел.
Представление дробных значений.
Сжатие данных.
Ошибки при передаче информации.
Упражнения.
Общественные и социальные вопросы.
Рекомендуемая литература.
Дополнительная литература.
Глава вторая. Обработка данных.
Центральный процессор.
Концепция хранимой программы.
Выполнение программы.
Арифметические и логические команды.
Взаимодействие с другими устройствами.
Другие типы архитектуры компьютеров.
Программное обеспечение.
Глава третья. Операционные системы и сети.
Эволюция операционных систем.
Архитектура операционных систем.
Координация действий машины.
Организация конкуренции между процессами.
Сети. Сетевые протоколы.
Безопасность.
Глава четвертая. Алгоритмы.
Понятие алгоритма.
Представление алгоритма.
Создание алгоритма.
Итерационные структуры.
Рекурсивные структуры.
Эффективность и правильность.
Глава пятая. Языки программирования.
Исторический обзор.
Концепции традиционного программирования.
Процедуры и функции.
Реализация языка.
Объектно-ориентированное программирование.
Программирование параллельных процессов.
Декларативное программирование.
Глава шестая. Технология разработки программного обеспечения.
Предмет технологии разработки программного обеспечения.
Жизненный цикл программного обеспечения.
Модульность.
Методы проектирования.
Тестирование.
Документирование.
Право собственности и ответственность за создаваемое программное обеспечение.
Организация данных.
Глава седьмая. Структуры данных.
Массивы.
Списки.
Стеки.
Очереди.
Древовидные структуры.
Специализированные типы данных.
Указатели в машинном языке.
Глава восьмая. Файловые структуры.
Роль операционной системы.
Последовательные файлы.
Текстовые файлы.
Индексация.
Хеширование.
Глава девятая. Структуры баз данных.
Общие понятия.
Многоуровневый подход к реализации баз данных.
Реляционная модель.
Объектно-ориентированные базы данных.
Обеспечение целостности баз данных.
Влияние технологий баз данных на общество.
Потенциал алгоритмических машин.
Глава десятая. Искусственный интеллект.
Машины и интеллект.
Распознавание изображений.
Способность к рассуждению.
Искусственные нейронные сети.
Генетические алгоритмы.
Приложения теории искусственного интеллекта.
Осмысливание последствий.
Глава одиннадцатая. Теория вычислений.
Простейший язык программирования.
Машины Тьюринга.
Вычислимые функции.
Невычислимые функции.
Сложность задач.
Криптография с использованием открытых ключей.
Приложения.
Приложение А. Код ASCII.
Приложение Б. Электронные схемы обработки чисел в двоичном дополнительном коде.
Приложение В. Пример типичного машинного языка.
- Архитектура машины
- Машинный язык
Приложение Г. Примеры программ.
- Язык Ada
- Язык С
- Язык C++
- Язык FORTRAN
- Язык JAVA
- Язык PASCAL
Приложение Д. Эквивалентность итеративных и рекурсивных структур.
Приложение Е. Ответы на вопросы для самопроверки.
Предметный указатель