
- •Лекция № 1
- •Тема 1.1. Сущность и роль технологии программирования, языки и системы программирования.
- •Учебные вопросы:
- •Тема 1.1. Сущность и роль технологии программирования, языки и системы программирования.
- •Введение
- •1. История программирования от первых автоматов до первых эвм
- •1.1. О терминах
- •1.2. Ранняя история программирования автоматов
- •1.3. Станки с числовым программным управлением
- •1.4. Вычислительные машины
- •1.5. Двоичная система
- •1.6. Архитектура фон Неймана
- •1.7. Машинный код
- •2. Сущность, роль и основные принципы технологии программирования
- •2.1. Этапы решения задач на эвм
- •2.2. Задачи технологии программирования
- •2.3. Основные принципы технологии программирования
- •3. Основные понятия программирования
- •4. Языки и системы программирования, язык JavaScript
- •4.1. Классификация языков программирования
- •4.2. Характеристика систем программирования на языкахJavaScript/Jscript
1.5. Двоичная система
Все рассмотренные выше вычислительные машины выполняли операции над числами в десятичной системе счисления. Для этого внутри машины каждый разряд (цифра) числа представлялся шестерёнкой с 10 зубьями, повёрнутой на угол, соответствующий величине разряда.
Таблица 1.1 Двоичная арифметика | |||
А |
В |
А+В |
А |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
10 |
1 |
Кроме двоичной арифметики, в современных цифровых компьютерах используется двоичная (Булева) логикаилиалгебра логики– система логических операций (НЕ, И, ИЛИ и др.) над логическими значениями 1 (ИСТИНА) и 0 (ЛОЖЬ). Свойства этой алгебры были изучены английским математиком и логиком Дж. Булем в 1854 году. Последующие исследования показали, что любая булева функция23может быть представлена формулой с логическими операциями одного из следующих наборов: {НЕ, И}, {НЕ, ИЛИ}, {НЕ-И}, {НЕ-ИЛИ}. Эти операции представлены в таблице 1.2.
Таблица 1.2 Логические операции | |||||||
x |
НЕ(x) |
y |
z |
И(y, z) |
ИЛИ(y, z) |
НЕ-И(y, z) |
НЕ-ИЛИ(y, z) |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
|
|
1 |
0 |
0 |
1 |
1 |
0 |
|
|
1 |
1 |
1 |
1 |
0 |
0 |
Булева алгебра используется не только в языках программирования, но и для реализации логических схем современных компьютеров. В 1938 году советский логик и теоретик-электротехник В.И. Шестаков (1907–1987) и американский инженер и математик К. Шеннон (1916–2001) независимо друг от друга представили диссертации, в которых предложили интерпретацию булевой логики на релейных схемах и показали, что любая релейная схема описывается некоторой булевой функцией и поэтому может быть собрана из простых схем, реализующих операции НЕ, И, ИЛИ, НЕ-И, НЕ-ИЛИ. Такие схемы стали называться логическими. Сразу после этого инженеры стали создавать из электромагнитных реле различные логические схемы, которые могли быть использованы в двоичных вычислительных машинах для выполнения арифметических и логических операций, хранения двоичных данных, управления порядком выполнения операций.
В это время уже существовали и использовались в радиосвязи электронные лампы. В 1883 году всемирно известный американский изобретатель Т. Эдисон открыл эффект термоэлектронной эмиссии. В 1897 году немецкий физик Ф. Браун изобрёл электронно-лучевую трубку, а в 1904 году «эффект Эдисона» стал основой британского патента Дж.Флеминга на первую электронную лампу – диод. Так начинался век электроники. В то же время параллельно с ламповой электроникой создавалась и полупроводниковая электроника.
В 1918 году были изобретены первые электроламповые реле – триггеры. Это сделали советский учёный-радиотехник М.А. Бонч-Бруевич (1888–1940) и, независимо от него, английские физики У.Г. Икклз и Ф.У. Джордан. Сейчас вычислительная техника использует, в основном, полупроводниковые триггеры и диоды для организации компонентов вычислительных систем: регистров, счётчиков, процессоров, ОЗУ. Она также развивается на основе теории логических схем.
Рисунок 1.15. Модель
Z1.
Интенсивные работы по созданию первых электронных вычислительных машин (ЭВМ) в 40-х годах XXвека привели к выработке базовых принципов архитектуры ЭВМ, оказавших решающее влияние на последующее развитие компьютерной техники. Эти принципы известны какархитектура фон Неймана, благодаря тому, что они были впервые опубликованы в 1945 году в отчёте знаменитого американского математика Дж. фон Неймана (читается – Ноймана, от нем.Neumann– австро-венгерское происхождение) о проекте ЭВМEDVAC, работавшего над этим проектом вместе с его основными авторами – Дж.У. Мокли (Мочли, Маучли) и Дж.П. Экертом.