В каком поколении машин все инструкции компьютеру давались в машинном коде

Обновлено: 06.07.2024

35672 = 3*10<sup>4</sup> + 5*10<sup>3</sup> + 6*10<sup>2</sup> + 7*10<sup>1</sup> + 2*10<sup>0</sup> (1)

Чтобы набрать число 35672 мы должны передвинуть влево две "костяшки" на первом "прутике", 7 на втором, 6 на третьем, 5 на четвертом и 3 на пятом. (У нас ведь 1 "костяшка" на втором - это то же самое, что и 10 "костяшек" на первом, а одна на третьем равна десяти на втором, и так далее. ) Пронумеруем наши "прутики" снизу вверх - да так, чтобы номером первого был "0". И снова посмотрим на наши выражения:

Это (если сверху вниз считать) сколько на каждом "прутике" "костяшек" влево отодвинуто.

Это номер прутика (самый нижний - 0), на котором отодвинуто определенное число костяшек.

Это на каждом прутике - по 10 костяшек нанизано, не все влево отодвинуты, но всего-то их - 10!
Кстати, красненькое 10 в последнем выражении соответствует основанию (radix) системы счисления (number system).

Если же основание системы счисления больше десяти, то есть больше, чем десять привычных нам чисел, то начинают использоваться буквы английского алфавита. Например, для обозначения чисел в системе счисления с основанием 11 "как цифра" будет использоваться буква А:

В системе счисления с основанием 16 - буквы от A до F:

Правда, при определенном основании (при каком?) буквы аглицкого алфавита закончатся.
Но нам это, пока что, глубоко фиолетово, так как работать мы будем только с тремя radix-ами: 10 (ну естественно), 16 и 2. Правда, если кто на ДВК поизучать это дело собирается, тому еще и radix 8 понадобится.

Если же мы используем символы 123 для представления, например, шестнадцатеричного числа, то подразумеваем следующее:

Короче - полный беспредел. Говорим одно, а подразумеваем другое. И последнее не для красного словца сказано. А потому, что так оно и есть.

Истина где-то рядом.

radix 10 0123456789101112131415
radix 16 0123456789ABCDEF
radix 2 0 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 1110 1111

Следуя этой таблице, число 5BC в шестнадцатеричном формате "строится" так:

+ 11 раз 16 (10 - потому что по таблице B как бы равно 11)

А теперь, если пораскинуть мозгами, с легкостью переведем 5BC из шестнадцатеричной в десятичную систему счисления:

Вот и объединили цифры с буквами. Пространство со временем поучимся объединять немного позже - если не испугаетесь сложностей низкоуровневого программирования.
В общем-то решать вам. В Delphi тоже много чего объединять можно.

А вот и обратный процесс - перевод из HEX в DEC числа A7B8h:

Или использовать родные цифры в десятичной системе счисления, но по другому "вектору упорядоченных цифр" - 1324890576:

Правда, этим немножко затрудняется понимание происходящего? А ведь тоже десятичная система! И рисунок цифр как бы знакомый ))
Или вообще считать в 256-ричной системе счисления, используя в качестве "рисунка цифр" таблицу ASCII-символов! (По сравнению с вами, извращенцами, любой Биллгейтс будет девственником казаться!!).

Каждой шестнадцатеричной цифре соответствует тетрада (4 штуки) ноликов и единичек. Все, что потом нужно сделать - "состыковать" эти тетрады. Круто? Вас еще не то ждет!

. но это так. кстати.

AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=18B2 ES=18B2 SS=18B2 CS=18B2 IP=0100 NV UP EI PL NZ NA PO NC

Точно так же присвоить значение 78h регистру AH можно двумя способами:

То же самое, но для регистра AL:

выбросит вам на монитор

Введите после двоеточия, например, число 123 и снова нажмите на Enter:

На дисплее опять появится приглашение "-", на которое мы отвечаем командой "R" без параметров и таким образом вновь просматриваем значения наших регистров:

AX=0123 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=18B2 ES=18B2 SS=18B2 CS=18B2 IP=0100 NV UP EI PL NZ NA PO NC 18B2:0100 6A 00 68 4B 01 66 83 7E-E0 00 74 05 B8 4C 01 EB j.hK.f. 18B2:0110 03 B8 4A 01 2B D2 52 50-57 FF 36 C4 34 00 A1 18 ..J.+.RPW.6.4. 18B2:0120 F7 7F 83 C4 12 56 9A 16-44 F7 7F FF 76 FE 9A 59 . V..D. v..Y 18B2:0130 04 8F 17 B8 FE FF 1F 5E-5F C9 CA 06 00 90 C8 54 . ^_. T 18B2:0140 04 00 57 56 8B 76 04 33-C0 89 46 D6 B9 0B 00 8D ..WV.v.3..F. 18B2:0150 7E D8 16 07 F3 AB 89 46-BC B9 0C 00 8D 7E BE F3 18B2:0160 AB 9A 21 9C 8F 17 89 46-FA A1 08 01 8E 46 06 26 . F. F.& 18B2:0170 39 44 02 0F 84 55 01 C7-46 BC 1A 00 C4 5E 0C 26 9D. U..F. ^.&
  • 0:417 - два байта разрядов состояния клавиатуры. Они активно используются ROM-BIOS для управления интерпретаций действий клавиатуры. Изменение этих байтов изменяет значение нажатых клавиш (например, верхний или нижний регистр).
  • 0:41A - cлово по этому адресу указывает на начало буфера BIOS для ввода с клавиатуры, расположенного начиная с адреса 41E. В этом буфере хранятся и ждут обработки результаты нажатия на клавиши. Конец буфера - слово по адресу 41C.
  • 0:43E - байт указывает, необходима ли проверка дискеты перед подводом головки на дорожку. Разряды 0. 3 соответствуют дисководам 0. 3. Если разряд установлен в 0, то необходима проверка дискеты. Как правило, вы можете обнаружить, что разряд установлен в 0, если при предыдущем обращении к дисководу имели место какие-либо проблемы. Например, разряд проверки будет равен 0, если вы попытаетесь запросить каталог на дисководе, на котором нет дискеты, и затем на запрос, появившийся на экране дисплея: "Not ready reading drive B: Abort, Retry, Ignore?" вы ответите: "A".
  • 0:44C (2 байта) - длина регенерации экрана. Это число байтов, используемых для страницы экрана. Зависит от режима.
  • 0:44E (2 байта) - смещение для адреса начала текущей страницы в памяти дисплея. Этот адрес указывает, какая страница в данный момент используется (маленькая, но неприятная подробность - это смещение внутри текущего сегмента видеопамяти, без учета самого сегмента. Например, для нулевой страницы смещение всегда будет равно нулю.)
  • 0:460 (2 байта) - размер курсора, представленный в виде диапазона строк развертки. Первый байт задает конечную, а второй - начальную строку развертки.
  • 0:449 - значение этого байта определяет текущий видеорежим. Для расшифровки требуется целая таблица. Например, 3 - 80-колонный текст, 16 цветов; 13h (19) - 256-цветный графический режим 320x200 и т. д.
  • это - программа;
  • эта программа - программа с корректным выходом.
  • B82301 - внести значение 0123h в AX;
  • 052500 - прибавить значение 0025h к AX;
  • 8BD8 - переслать содержимое AX в BX;
  • 03D8 - прибавить содержимое AX к BX;
  • 8BCB - переслать содержимое BX в CX;
  • 31C0 - очистка AX;
  • CD20 - конец программы. Передача управления операционной системе.
  1. Он пытается интерпретировать данные как код. Соответственно, в процессор "попадает" всякая ерунда.
  2. Вряд ли он натолкнется на последовательность CD 20 вашем тексте . Даже в том случае, если этот код выполнится "успешно" - ваша программа не возвратит управление операционной системе, а пойдет выполняться хлам, содержащийся в оперативной памяти. Как-то - остатки ранее выполненных программ, куски чьих-то данных, интерпретированные как код. и прочая многочисленная ерунда.
  • кодом (т.е. что компьютеру нужно делать) - последовательностью инструкций;
  • данными (т.е. с чем компьютеру нужно выполнять ту или иную работу). Именно данные являются исходной "задачей" и конечным результатом работы процессора.
  • стеком - это область памяти, позволяющая писать реентерабельный/рекурсивный код и служащая для хранения адресов возврата и локальных данных и передачи параметров.
11B7:0100 B82301 MOV AX,0123 ; Внести значение 0123h в AX 11B7:0103 052500 ADD AX,0025 ; Прибавить значение 0025h к AX 11B7:0106 8BD8 MOV BX,AX ; Переслать содержимое AX в BX 11B7:0108 03D8 ADD BX,AX ; Прибавить содержимое AX к BX 11B7:010A 8BCB MOV CX,BX ; Переслать содержимое BX в CX AX=0123 BX=0000 CX=0010 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=11B7 ES=11B7 SS=11B7 CS=11B7 IP=0103 NV UP EI PL NZ NA PO NC

Смотрим на значение AX и вспоминаем предыдущую инструкцию - "внести значение 0123h в AX". Внесли? И правда! А в самом низу - код и мнемоника команды, которая будет выполняться следующей.

Вводим команду "T" снова:.

AX=0148 BX=0000 CX=0010 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=11B7 ES=11B7 SS=11B7 CS=11B7 IP=0106 NV UP EI PL NZ NA PE NC

AX=0148 - "прибавить значение 0025h к AX". Сделали? Сделали!!

Вводим команду "T" снова:.

AX=0148 BX=0148 CX=0010 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=11B7 ES=11B7 SS=11B7 CS=11B7 IP=0108 NV UP EI PL NZ NA PE NC

AX=0148=BX - "переслать содержимое AX в BX". Сделали? Сделали!!

Вводим команду "T" снова:

AX=0148 BX=0290 CX=0010 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=11B7 ES=11B7 SS=11B7 CS=11B7 IP=010A NV UP EI PL NZ AC PE NC

"Прибавить содержимое AX к BX". Оно? А то!

Вводим команду "T" снова:

AX=0148 BX=0290 CX=0290 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=11B7 ES=11B7 SS=11B7 CS=11B7 IP=010C NV UP EI PL NZ AC PE NC

"Переслать содержимое BX в CX". Сделано!

Вводим команду "T" снова:

AX=0000 BX=0290 CX=0290 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=11B7 ES=11B7 SS=11B7 CS=11B7 IP=010E NV UP EI PL ZR NA PE NC
  1. Многочисленными "схемами" компьютера, его устройствами. Например, соответствующее прерывание генерируется при нажатии клавиши на клавиатуре.
  2. Также прерывания генерируются как "побочный продукт" при некоторых "необычных" ситуациях (например, при делении на "букву О"), из которых компьютеру хочешь, не хочешь, но приходится как-то выкручиваться.
  3. Наконец, прерывания могут преднамеренно генерироваться программой, для того чтобы произвести то или иное "низкоуровневое" действие.
  • AH=06h; (_3)
  • AL - число строк прокрутки (0…25) (AL=0 означает гашение всего окна); (_4)
  • BH - атрибут, использованный в пустых строках (00h…FFh); (_5)
  • CH - строка прокрутки - верхний левый угол; (_6)
  • CL - столбец прокрутки - верхний левый угол;
  • DH - строка прокрутки - нижний правый угол;
  • DL - столбец прокрутки - нижний правый угол;
  • выполнив команду INT 10h, мы ВЫПОЛНЯЕМ одну из "функций видео";
  • так как функций видео - много, необходимо УКАЗАТЬ, КАКУЮ именно ФУНКЦИЮ из МНОЖЕСТВА мы хотим ВЫПОЛНИТЬ.
119A:0104 mov ch,10 ;четыре координаты прямоугольника :0100 XOR AL,AL ;ПРИМЕЧАНИЕ: с целью экономии пространства и :0102 MOV BH,10 ;времени мы немножко сократили наш DEBUG-й :0106 MOV CL,10 ;машинные коды, соответствующие мнемоническим :010A MOV DL,3E ;А так, конечно, в оригинале первая строка вот <p>&nbsp; Правда, красивые циферки-буковки? Набиваем-набиваем! Если сейчас к вам подойдут недZенствующие приятели/коллеги и посмотрят, что вы тут колупаете, то ни черта не поймут и покрутят пальцем у виска. Привыкайте к этому. Только не говорите им, что пытаетесь сейчас получить Матрицу, ПОТОМУ ЧТО это неправда. А неправда это потому, что сейчас Матрица в очередной раз обманула вас! <p>&nbsp; У вас только первое окно прорисуется, сразу же после чего программа натолкнется на INT 20h и благополучно завершится! А следовательно, и все, что после первого CD 20 написано будет - останется проигнорированным! Исправляйте! (Т.е. уберите все INT 20 КРОМЕ ПОСЛЕДНЕГО). <p>&nbsp; Второй момент. ВОЗВРАЩАЕТ ЛИ это прерывание ЧТО-НИБУДЬ В РЕГИСТР AX? Смотрите описание. Ничего? Ну так какого черта тогда по новой вводить XOR AL,AL и MOV AH,06 и переприсваивать AH значение 6h, если и без того AH = 6h? Один раз ввести - более чем достаточно! <p>&nbsp; Скажите, какая мелочь- байтом больше, байтом меньше! А я скажу вот что - на то он и assembler, <p>&nbsp; - <i>По-новому?</i> - возмутимся мы в свою очередь! - <i>Зачем по-новому? Вы что, с ума сошли?</i> <p>&nbsp; 1. Что вам мешает после команды "a" указать адрес, который вы желаете переассемблировать? И <p>&nbsp; - <i>А что делать, если не переассемблировать нужно, а вообще удалить?</i> <p>&nbsp; 2. Существует куча способов, что вы в самом-то деле! Например, в HEX Workshop с блоками шестнадцатеричных цифр запросто можно работать. Да и в других программах это можно делать - например, в <p>&nbsp; Кстати, если процессор встретит команду NOP, то он просто побездельничает некоторое очень <p>&nbsp; ПРОБУЙТЕ!! В конце концов, ваша прога должна принять такой вот вид: AX=0000 BX=0000 CX=0043 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=11B7 ES=11B7 SS=11B7 CS=11B7 IP=0102 NV UP EI PL ZR NA PE NC

Состояние: обнулился регистр AX (первую команду MOV AL,AL мы не видим). Процессор готовится выполнить команду MOV BH,10. Дадим ему это сделать!

AX=0000 BX=1000 CX=0043 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=11B7 ES=11B7 SS=11B7 CS=11B7 IP=0104 NV UP EI PL ZR NA PE NC

Состояние - в BX уже внесен код синего цвета, который нам по условию необходимо заменить на красный (т. е. заменить значение регистра BX с 1000h на 4000h).

Вот теперь-то мы и делаем это "на лету":

А действительно ли сделали? Проверим!

AX=0000 BX=4000 CX=0043 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=11B7 ES=11B7 SS=11B7 CS=11B7 IP=0104 NV UP EI PL ZR NA PE NC

Состояние? BH теперь равно 40h! Мы "вклинились" между строчками:

Ну а как делать то же самое с остальными регистрами вы, наверняка, уже и сами догадались.

Очень важно помнить, каким "нездоровым" образом в стеке реализована ОЧЕРЕДЬ -поместить/извлечь. Помните, мы вас предупреждали, что нам нельзя верить на слово? Не верьте! А посему - обязательно убедитесь в истинности/ложности нашего голословного утверждения при помощи следующей программульки:

С очередностью заполнения стека, наверное, все понятно . Я много про абстрактные "блины" загружал. А вот с адреса 114 начинается извлечение из стека. В какой последовательности это делается, вы можете увидеть сами, произведя трассировку этой небольшой проги.

AX=0000 BX=0000 CX=001B DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=14DC ES=14DC SS=14DC CS=14DC IP=0100 NV UP EI PL NZ NA PO NC

Анализируем. Прога еще не начала работать, готовится выполниться команда по адресу 100. Делаем ШАГ!

AX=0001 BX=0000 CX=001B DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=14DC ES=14DC SS=14DC CS=14DC IP=0103 NV UP EI PL NZ NA PO NC

Анализируем. AX=0001 - значит, команда выполнилась правильно . Следующая команда, по идее, должна поместить 1 в стек.

AX=0001 BX=0000 CX=001B DX=0000 SP=FFFC BP=0000 SI=0000 DI=0000 DS=14DC ES=14DC SS=14DC CS=14DC IP=0104 NV UP EI PL NZ NA PO NC

И что? Команда выполнилась, но где мы можем увидеть, что в стек действительно "ушла" единица? Увы, но здесь это не отображается . Проверим потом. Ведь логично предположить, что если эти значения действительно сохранились в стеке, то мы их потом без проблем оттуда извлечем, т.е. если найдем "там" наши 1, 2, 3, 4, 5 - значит все Ок.

А поэтому - дадим программе работать дальше до адреса 114 (не включительно), не вдаваясь в подробный анализ. Что тут анализировать? Если значение регистра AX последовательно меняется от 1 до 5 - значит, команда mov работает. А стек (команда push) проверим потом, как и договорились.

Проехали до адреса 114.

AX=0005 BX=0000 CX=001B DX=0000 SP=FFF4 BP=0000 SI=0000 DI=0000 DS=14DC ES=14DC SS=14DC CS=14DC IP=0114 NV UP EI PL NZ NA PO NC

А вот теперь снова анализируем . При следующем шаге выполнится команда, извлекающая некогда "запомненное" значение AX из стека.

Обратите внимание, регистр IP указывает на адрес (114) выполняемой команды. Мы с вами это уже проходили, не так ли?

Поехали дальше!!

AX=0005 BX=0000 CX=001B DX=0000 SP=FFF6 BP=0000 SI=0000 DI=0000 DS=14DC ES=14DC SS=14DC CS=14DC IP=0115 NV UP EI PL NZ NA PO NC

Выполнился первый POP. Готовится выполниться второй. AX=5. Т.е., по сравнению с предыдущим шагом, вроде ничего не изменилось. Но на самом деле это не так. AX=5 - эта пятерка "загрузилась" из стека ). В этом вы легко убедитесь, сделав следующий шаг трассировки.

AX=0004 BX=0000 CX=001B DX=0000 SP=FFF8 BP=0000 SI=0000 DI=0000 DS=14DC ES=14DC SS=14DC CS=14DC IP=0116 NV UP EI PL NZ NA PO NC

Ууупс. AX=4 . А команда, вроде, та же - POP AX

AX=0003 BX=0000 CX=001B DX=0000 SP=FFFA BP=0000 SI=0000 DI=0000 DS=14DC ES=14DC SS=14DC CS=14DC IP=0117 NV UP EI PL NZ NA PO NC AX=0002 BX=0000 CX=001B DX=0000 SP=FFFC BP=0000 SI=0000 DI=0000 DS=14DC ES=14DC SS=14DC CS=14DC IP=0118 NV UP EI PL NZ NA PO NC AX=0001 BX=0000 CX=001B DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=14DC ES=14DC SS=14DC CS=14DC IP=0119 NV UP EI PL NZ NA PO NC :0102 MOV CX,0005 ; нижеследующий до команды LOOP кусок повторить CX раз :0105 ADD AX,0001 ; AX=AX+1 (у нас же значение AX на 1 увеличивается. ) :0109 LOOP 0105 ; конец цикла; инициируем повторение; CX уменьшается на 1

Историю развития современных ЭВМ разделяют на 4 поколения. Но деление компьютерной техники на поколения — весьма условная, нестрогая классификация по степени развития аппаратных и программных средств, а также способов общения с компьютером.

Идея делить машины на поколения вызвана к жизни тем, что за время короткой истории своего развития компьютерная техника проделала большую эволюцию, как в смысле элементной базы (лампы, транзисторы, микросхемы и др.), так и в смысле изменения её структуры, появления новых возможностей, расширения областей применения и характера использования. Этот прогресс показан в данной таблице:

П О К О Л Е Н И Я Э В М

1972 - настоящее время

Количество ЭВМ в мире (шт.)

Быстродействие (операций в сек.)

Гибкий и лазерный диск

Все ЭВМ I-го поколения были сделаны на основе электронных ламп, что делало их ненадежными - лампы приходилось часто менять. Эти компьютеры были огромными, неудобными и слишком дорогими машинами, которые могли приобрести только крупные корпорации и правительства. Лампы потребляли огромное количество электроэнергии и выделяли много тепла.

Притом для каждой машины использовался свой язык программирования. Набор команд был небольшой, схема арифметико-логического устройства и устройства управления достаточно проста, программное обеспечение практически отсутствовало. Показатели объема оперативной памяти и быстродействия были низкими. Для ввода-вывода использовались перфоленты, перфокарты, магнитные ленты и печатающие устройства, оперативные запоминающие устройства были реализованы на основе ртутных линий задержки электроннолучевых трубок.

Эти неудобства начали преодолевать путем интенсивной разработки средств автоматизации программирования, создания систем обслуживающих программ, упрощающих работу на машине и увеличивающих эффективность её использования. Это, в свою очередь, потребовало значительных изменений в структуре компьютеров, направленных на то, чтобы приблизить её к требованиям, возникшим из опыта эксплуатации компьютеров.

· 1946г. ЭНИАК

В 1946 г. американские инженер-электронщик Дж. П. Эккерт и физик Дж. У. Моучли в Пенсильванском университете сконструировали, по заказу военного ведомства США, первую электронно-вычислительную машину - “Эниак” (Electronic Numerical Integrator and Computer), которая предназначалась для решения задач баллистики. Она работала в тысячу раз быстрее, чем "Марк-1", выполняя за одну секунду 300 умножений или 5000 сложений многоразрядных чисел. Размеры: 30 м. в длину, объём - 85 м 3 ., вес - 30 тонн. Использовалось около 20000 электронных ламп и 1500 реле. Мощность ее была до 150 кВт.

· 1949г. ЭДСАК

Первая машина с хранимой программой - ”Эдсак” - была создана в Кембриджском университете (Англия) в 1949 г. Она имела запоминающее устройство на 512 ртутных линиях задержки. Время выполнения сложения было 0,07 мс, умножения - 8,5 мс.

· 1951г. МЭСМ

В 1948г. году академик Сергей Алексеевич Лебедев предложил проект первой на континенте Европы ЭВМ – Малой электронной счетно-решающей машины (МЭМС). В 1951г. МЭСМ официально вводится в эксплуатацию, на ней регулярно решаются вычислительные задачи. Машина оперировала с 20­разрядными двоичными кодами с быстродействием 50 операций в секунду, имела оперативную память в 100 ячеек на электронных лампах.

· 1951г. UNIVAC-1. (Англия)

В 1951 г. была создана машина “Юнивак”(UNIVAC) - первый серийный компьютер с хранимой программой. В этой машине впервые была использована магнитная лента для записи и хранения информации.

· 1952-1953г. БЭСМ-2

Вводится в эксплуатацию БЭСМ-2 (большая электронная счетная машина) с быстродействием около 10 тыс. операций в секунду над 39-разрядными двоичными числами. Оперативная память на электронно-акустических линиях задержки - 1024 слова, затем на электронно-лучевых трубках и позже на ферритовых сердечниках. ВЗУ состояло из двух магнитных барабанов и магнитной ленты емкостью свыше 100 тыс. слов.

В 1958 г. в ЭВМ были применены полупроводниковые транзисторы, изобретённые в 1948 г. Уильямом Шокли, они были более надёжны, долговечны, малы, могли выполнить значительно более сложные вычисления, обладали большой оперативной памятью. 1 транзистор способен был заменить

40 электронных ламп и работал с большей скоростью.

Во II-ом поколении компьютеров дискретные транзисторные логические элементы вытеснили электронные лампы. В качестве носителей информации использовались магнитные ленты ("БЭСМ-6", "Минск-2","Урал-14") и магнитные сердечники, появились высокопроизводительные устройства для работы с магнитными лентами, магнитные барабаны и первые магнитные диски.

В качестве программного обеспечения стали использовать языки программирования высокого уровня, были написаны специальные трансляторы с этих языков на язык машинных команд. Для ускорения вычислений в этих машинах было реализовано некоторое перекрытие команд: последующая команда начинала выполняться до окончания предыдущей.

Появился широкий набор библиотечных программ для решения разнообразных математических задач. Появились мониторные системы, управляющие режимом трансляции и исполнения программ. Из мониторных систем в дальнейшем выросли современные операционные системы.

Машинам второго поколения была свойственна программная несовместимость, которая затрудняла организацию крупных информационных систем. Поэтому в середине 60-х годов наметился переход к созданию компьютеров, программно совместимых и построенных на микроэлектронной технологической базе.

В 1960 г. появились первые интегральные системы (ИС), которые получили широкое распространение в связи с малыми размерами, но громадными возможностями. ИС - это кремниевый кристалл, площадь которого примерно 10 мм 2 . 1 ИС способна заменить десятки тысяч транзисторов. 1 кристалл выполняет такую же работу, как и 30-ти тонный “Эниак”. А компьютер с использованием ИС достигает производительности в 10 млн. операций в секунду.

В 1964 году, фирма IBM объявила о создании шести моделей семейства IBM 360 (System 360), ставших первыми компьютерами третьего поколения.

Машины третьего поколения — это семейства машин с единой архитектурой, т.е. программно совместимых. В качестве элементной базы в них используются интегральные схемы, которые также называются микросхемами.

Машины третьего поколения имеют развитые операционные системы. Они обладают возможностями мультипрограммирования, т.е. одновременного выполнения нескольких программ. Многие задачи управления памятью, устройствами и ресурсами стала брать на себя операционная система или же непосредственно сама машина.

Примеры машин третьего поколения — семейства IBM -360, IBM-370, ЕС ЭВМ (Единая система ЭВМ), СМ ЭВМ (Семейство малых ЭВМ) и др. Быстродействие машин внутри семейства изменяется от нескольких десятков тысяч до миллионов операций в секунду. Ёмкость оперативной памяти достигает нескольких сотен тысяч слов.

(с 1972 г. по настоящее время)

Четвёртое поколение — это теперешнее поколение компьютерной техники, разработанное после 1970 года.

Впервые стали применяться большие интегральные схемы (БИС), которые по мощности примерно соответствовали 1000 ИС. Это привело к снижению стоимости производства компьютеров.

В 1980 г. центральный процессор небольшой ЭВМ оказалось возможным разместить на кристалле площадью 1/4 дюйма (0,635 см 2 .). БИСы применялись уже в таких компьютерах, как “Иллиак”, ”Эльбрус”, ”Макинтош ”. Быстродействие таких машин составляет тысячи миллионов операций в секунду. Емкость ОЗУ возросла до 500 млн. двоичных разрядов. В таких машинах одновременно выполняются несколько команд над несколькими наборами операндов.

C точки зрения структуры машины этого поколения представляют собой многопроцессорные и многомашинные комплексы, работающие на общую память и общее поле внешних устройств. Ёмкость оперативной памяти порядка 1 - 64 Мбайт.

Распространение персональных компьютеров к концу 70-х годов привело к некоторому снижению спроса на большие ЭВМ и мини-ЭВМ. Это стало предметом серьезного беспокойства фирмы IBM (International Business Machines Corporation) — ведущей компании по производству больших ЭВМ, и в 1979 г. фирма IBM решила попробовать свои силы на рынке персональных компьютеров, создав первые персональные компьютеры- IBM PC .

Сейчас ведутся интенсивные разработки ЭВМ V поколения. Разработка последующих поколений компьютеров производится на основе больших интегральных схем повышенной степени интеграции, использования оптоэлектронных принципов (лазеры, голография).

Ставятся совершенно другие задачи, нежели при разработки всех прежних ЭВМ. Если перед разработчиками ЭВМ с I по IV поколений стояли такие задачи, как увеличение производительности в области числовых расчётов, достижение большой ёмкости памяти, то основной задачей разработчиков ЭВМ V поколения является создание искусственного интеллекта машины (возможность делать логические выводы из представленных фактов), развитие "интеллектуализации" компьютеров - устранения барьера между человеком и компьютером. Компьютеры будут способны воспринимать информацию с рукописного или печатного текста, с бланков, с человеческого голоса, узнавать пользователя по голосу, осуществлять перевод с одного языка на другой. Это позволит общаться с ЭВМ всем пользователям, даже тем, кто не обладает специальных знаний в этой области. ЭВМ будет помощником человеку во всех областях.

Компьютеры появились очень давно в нашем мире, но только в последнее время их начали так усиленно использовать во многих отраслях человеческой жизни. Ещё десять лет назад было редкостью увидеть какой-нибудь персональный компьютер -- они были, но были очень дорогие, и даже не каждая фирма могла иметь у себя в офисе компьютер. А теперь? Теперь в каждом третьем доме есть компьютер, который уже глубоко вошёл в жизнь самих обитателей дома.

Сама идея создания искусственного интеллекта появилась давным-давно, но только в 20 столетии её начали приводить в исполнение. Сначала появились огромные компьютеры, которые были под частую размером с огромный дом. Использование таких махин, как вы сами понимаете, было не очень удобно. Но что поделаешь? Но мир не стоял на одном месте эволюционного развития -- менялись люди, менялась их Среда обитания, и вместе с ней менялись и сами технологии, всё больше совершенствуясь. И компьютеры становились всё меньше и меньше по своим размерам, пока не достигли сегодняшних размеров.

Вот некоторые определения термина «поколение компьютеров», взятые из 2-х источников. «Поколения вычислительных машин - это сложившееся в последнее время разбиение вычислительных машин на классы, определяемые элементной базой и производительностью». Поколения компьютеров - нестрогая классификация вычислительных систем по степени развития аппаратных и в последнее время - программных средств. (Толковый словарь по вычислительным системам: Пер. с англ. М.: Машиностроение, 1990). Утверждение понятия принадлежности компьютеров к тому или иному поколению и появление самого термина «поколение» относится к 1964 г., когда фирма IBM выпустила серию компьютеров IBM / 360 на гибридных микросхемах (монолитные интегральные схемы в то время ещё не выпускались в достаточном количестве), назвав эту серию компьютерами третьего поколения. Соответственно предыдущие компьютеры - на транзисторах и электронных лампах - компьютерами второго и третьего поколений. В дальнейшем эта классификация, вошедшая в употребление, была расширена и появились компьютеры четвёртого и пятого поколений.

«Нулевое» -- до 1940 года. Вычислительный элемент -- механический. Простые арифметические операции. Арифмометры, механические счетные машины.

«Первое» -- 1940--1960. Вычислительный элемент -- электронные лампы. Быстродействие -- 10 - 20 тысяч операций в секунду. «Большие» ЭВМ. Это время становления архитектуры машин фон-неймановского типа, построенных на электронных лампах с быстродействием 10 - 20 тыс. арифметических операций в секунду. Программные средства были представлены машинным языком и языком ассемблера. В Советском Союзе к первому поколению относится первая отечественная вычислительная машина МЭСМ (Малая Электронная Счетная Машина), созданная в 1951 г. в г. Киеве под руководством академика С.А. Лебедева, серийные машины Минск-1, Стрела, БЭСМ (Большая Электронная Счетная Машина), Урал-1, Урал-4 и др.

«Второе» - 1960--1964. Вычислительный элемент -- транзисторы. Быстродействие -- до 1--2 миллионов операций в секунду. Мини-ЭВМ. Этоиспользование транзистора в качестве переключательного элемента вместо вакуумной лампы с быстродействием до сотен тыс. операций в секунду. Появилась основная память на магнитных сердечниках и внешняя память на магнитных барабанах. В это же время были разработаны алгоритмические языки высокого уровня, такие как Алгол, Кобол, Фортран, которые позволили составлять программы, не учитывая тип машины. Первой полупроводниковой машиной была появившаяся в 1959 г. модель КСА-501. В Советском Союзе к этому поколению относятся машины Минск-2, Минск-22, Минск-32, БЭСМ-2, БЭСМ-4, БЭСМ-6, быстродействие которых составляло миллион операций в секунду.

«Третье» -- 1964--1971. Вычислительный элемент -- сверхинтегральные схемы. Быстродействие -- до 300 миллионов операций в секунду. Микро-ЭВМ, предназначенные для работы с одним пользователем. Первые операционные системы. Характеризуется тем, что вместо транзисторов стали использоваться интегральные схемы (ИС), а вместо памяти на магнитных сердечниках стала применяться полупроводниковая память. Для повышения эффективности использования центрального процессора возникла необходимость в системной программе, управляющей центральным процессором. Так была создана операционная система (ОС). Вычислительные машины третьего поколения, как правило, образуют серии (семейства) машин, совместимых программно. Такая серия состоит из ЭВМ, производительность и объем памяти которых возрастают от одной машины серии к другой. Но программа, отлаженная на одной из машин серии, может быть сразу запущена на другой машине этой серии (на машинах большей мощности). Первым таким семейством машин третьего поколения была выпущенная в 1965 г. IBM/360, Она имеет свыше семи моделей. В Советском Союзе такую серию составляли машины семейства ЕС ЭВМ (Единая Система ЭВМ).

«Четвертое» -- 1971 - по настоящее время. Вычислительный элемент -- микропроцессоры. Быстродействие -- миллиарды операций в секунду. Персональные ЭВМ. Готовые прикладные программы, графический интерфейс, использование технологии мультимедиа. Глобальные компьютерные сети. Это машины, построенные на больших интегральных схемах (БИС). Такие схемы содержат до нескольких десятков тысяч элементов на кристалле. ЭВМ этого поколения выполняют десятки и сотни миллионов операций в секунду. Появляются микропроцессоры, способные обрабатывать числа длиной в 16 и 32 разряда, статическая память у которых емкостью 256 Кбайт и динамическая память емкостью в 1 Мбайт (на сегодняшний день все характеристики увеличились в сотни раз. Представленные здесь - это данные 80-х годов) ЭВМ по своим характеристикам так разнообразны, что их начинают классифицировать на: сверхбольшие ЭВМ (В-7700 - фирма Барроуз, Иллиак-IV - Иллинойский университет, Эльбрус - СССР), большие (универсальные), мини-ЭВМ и микро-ЭВМ (персональные компьютеры - ПК).

- Начнем урок с повторения основных устройств, приспособлений для счета, дат и имен в развитии вычислительной техники.

I задание. Назовите представленные приспособления для счета ручного этапа развития ВТ.

А. Саламинская доска. Б. Серобян. В. Суан-пан. Г. Палочки Непера. Д. Русские счеты.

II. Задание. Перед вами таблица. Соотнесите даты и устройства, а также назовите, кто являлся изобретателем данного устройства.

1. 1624 г. А. “Ступенчатый вычислитель”.
2. 1642 г. Б. Перфокарта.
3. 1673 г. В. Разностная машина.
4. 1804 г. Г. “Часы для счета”.
5. 1820 г. Д. “Паскалина”.
6. 1822 г. Е. Арифмометр.
7. 1880 г. Ж. Механический калькулятор

1-Г: 1624 г. - “Часы для счета”, Вильгельм Шиккард.

2-Д: 1642 г. - “Паскалина”, Блез Паскаль.

3-А: 1673 г. - “Ступенчатый вычислитель”, Готфрид Вильгельм Лейбниц.

4-Б: 1804 г. - Перфокарта, Мари Жозеф Жаккар.

5-Ж: 1820 г. - Механический калькулятор, Чарльз Ксавьер Томас.

6-В: 1822 г. - Разностная машина, Чарльз Бэббидж.

7-Е: 1880 г. - Арифмометр, Вильгодт Теофилович Однер.

Ответ: создание Марк I Эйкеном, размеры: длина 17 м, высота 2,5 м, имела 750 тыс. деталей, обрабатывала 23 разрядных числа. За день выполняла расчеты, которые вручную выполнялись за 6 месяцев.

IV. Задание. Вам представлены названия машин, назовите, что это за машина и дату создания.

ENIAC – первая ЭВМ, создана Мочли и Эккертом в 1946 г.

EDZAC - первая ЭВМ с хранимой программой, создана в 1949 г.

UNIVAC - первая серийная ЭВМ, создана в 1951 г.

МЭСМ - первая советская ЭВМ, создана под руководством С.А. Лебедева в 1951 г.

БЭСМ – создана в 1952 г.

СТРЕЛА - первая серийная советская ЭВМ создана в 1953 г.

3. НОВЫЙ МАТЕРИАЛ: ПОКОЛЕНИЯ ЭВМ.

- 60 лет (2006-1946 = 60) прошло с тех пор, как появилась первая ЭВМ. За этот короткий для развития общества период сменилось несколько поколений ЭВМ, а первые ЭВМ – являются музейной редкостью.

Чтобы показать стремительный рост в развитии вычислительной техники, английская писательница и журналистка Ж. Мегарри приводит любопытный пример:

  • стоил бы сейчас столько, сколько стоит обычная книга,
  • был бы мощнее самого большого в мире электровоза,
  • был бы способен объехать вокруг света 3000 раз на одной заправке топливного бака
  • был бы так мал, что восемь машин можно было бы припарковать на стоянке, не превосходящий по площади точку, которой заканчивается это предложение”.

Под поколением ЭВМ понимают все типы и модели вычислительных машин, разработанные различными конструкторскими коллективами, но построенные на одних и тех же научных и технических принципах.

Что же является определяющим признаком при отнесении ЭВМ к тому или иному поколению?

  • элементная база, т. е из каких в основном элементов они построены.
  • важнейшие характеристики: быстродействие, объем оперативной памяти, программное обеспечение, устройства ввода-вывода.

Деление ЭВМ на поколения условное. Существует немало моделей, которые по одним признакам относятся к одному, а по другим – к другому поколению.

I поколение ЭВМ – ЭВМ, сконструированные в 1946 – 1955 гг.

  • Элементная база – электронно-вакуумные лампы.
  • Соединение элементов – навесной монтаж проводами.
  • Габариты – ЭВМ выполнена в виде громадных шкафов. Эти компьютеры были огромными, неудобными и слишком дорогими машинами, которые могли приобрести крупные корпорации и правительства. Лампы потребляли большое количество электроэнергии и выделяли много тепла.
  • Быстродействие – 10-20 тыс. операций в секунду.
  • Эксплуатация – сложная из-за частого выхода из строя электронно-вакуумных ламп.
  • Программирование – машинные коды. При этом надо знать все команды машины, двоичное представление, архитектуру ЭВМ. В основном были заняты математики – программисты. Обслуживание ЭВМ требовало от персонала высокого профессионализма.
  • Оперативная память – до 2 Кбайт.
  • Данные вводились и выводились с помощью перфокарт, перфолент.

Подведем итог по I поколению ЭВМ:

- возьмите форму таблицы “Поколения ЭВМ” (Приложение 2)

- заполним 1 строку этой таблицы.

II поколение ЭВМ – ЭВМ, сконструированные в 1955 - 1965 гг.

К этому времени был сконструирован транзистор.

1948 г. – Джон Бардин, Уильям Шокли, Уолтер Браттейн изобрели транзистор, за изобретение транзистора они получили Нобелевскую премию в 1956 г.

1955 г. – создание первой ЭВМ на транзисторах – “Традис”.

"Традис" - первый транзисторный компьютер фирмы "Белл телефон лабораторис" - содержал 800 транзисторов, каждый из которых был заключен в отдельный корпус.

1 транзистор заменял 40 электронных ламп, был намного дешевле и надежнее.

1958 г. – создана машина М-20, выполнявшая 20 тыс. операций в секунду – самая мощная ЭВМ

50-х годов в Европе.

1963 г. – сотрудник Стэндфордского исследовательского центра Дуглас Энгельбарт продемонстрировал работу первой мыши.

  • Элементная база – полупроводниковые элементы (транзисторы, диоды).
  • Соединение элементов – печатные платы и навесной монтаж. Печатные платы представляли собой пластины из изолирующего материала, на который наносился токопроводящий материал. Для крепления транзисторов имелись специальные гнезда.
  • Габариты – ЭВМ выполнена в виде однотипных стоек, чуть выше человеческого роста, но для размещения требовался специальный машинный зал.
  • Быстродействие – 100 – 500 тыс. операций в секунду.
  • Эксплуатация – вычислительные центры со специальным штатом обслуживающего персонала, появилась новая специальность – оператор ЭВМ.
  • Программирование – на алгоритмических языках, появление первых операционных систем.
  • Оперативная память – 2 – 32 Кбайт.
  • Введен принцип разделения времени – совмещение во времени работы разных устройств, например, одновременно с процессором работает устройство ввода-вывода с магнитной ленты. Принцип управления стал микропрограммным и в ЭВМ возникла необходимость наличия постоянной памяти, в ячейках которой присутствуют коды, соответствующие управляющим сигналам.
  • Недостаток – несовместимость программного обеспечения.

Подведем итог по II поколению ЭВМ – заполним 2 строку таблицы “Поколения ЭВМ”.

III поколение ЭВМ – ЭВМ, сконструированные в 1965 – 1975 гг.

1958 г. – Джек Килби и Роберт Нойс, независимо друг от друга, изобретают интегральную схему (ИС).

1961 г. – в продажу поступила первая, выполненная на пластине кремния, интегральная схема.

1965 г. – начат выпуск семейства машин третьего поколения IBM-360 (США). Модели имели единую систему команд и отличались друг от друга объемом оперативной памяти и производительностью.

1967 г. – начат выпуск БЭСМ - 6 (1 млн. операций в 1 с) и “Эльбрус” (10 млн. операций в 1 с)

1969 г. - фирма IBM разделила понятия аппаратных средств (hardware) и программные средства (software). Фирма начала продавать программное обеспечение отдельно от железа, положив начало индустрии программного обеспечения.

29 октября 1969 года – проверка работы самой первой глобальной военной компьютерной сети ARPANet, связывающей исследовательские лаборатории на территории США

29 октября - день рождения Интернет.

1971 г. – создание первого микропроцессора фирмой Intel. На 1 кристалле сформировали 2250 транзисторов.

  • Элементная база – интегральные схемы.
  • Соединение элементов – печатные платы.
  • Габариты – ЭВМ выполнена в виде однотипных стоек.
  • Быстродействие –1-10 млн. операций в секунду.
  • Эксплуатация – вычислительные центры, дисплейные классы, новая специальность - системный программист.
  • Программирование - алгоритмические языки, операционные системы.
  • Оперативная память – 64 Кбайт.
  • Введен принцип разделения времени, принцип микропрограммного управления, принцип модульности – ЭВМ состоит из набора модулей: конструктивно и функционально законченных блоков в стандартном исполнении, принцип магистральности – способ связи всех модулей ЭВМ, входные и выходные устройства соединены одинаковыми проводами – шинами, появление магнитных дисков, дисплеев, графопостроителей.

Подведем итог по III поколению ЭВМ – заполним 3 строку таблицы “Поколения ЭВМ”.

IV поколение ЭВМ – ЭВМ, сконструированные начиная с 1975 г. - до наших дней.

1975 г. – IBM первой начинает промышленное производство лазерных принтеров.

1976 г. – фирма IBM создает первый струйный принтер.

1976 г. – создание первой ПЭВМ

Молодые американцы Стив Джобс и Стив Возняк организовали предприятие по изготовлению персональных компьютеров "Apple" ("Яблоко"), предназначенных для большого круга непрофессиональных пользователей. Продавался Apple 1 по весьма интересной цене - 666,66 доллара. За десять месяцев удалось реализовать около двухсот комплектов.

1976 г. - появилась первая дискета диаметром 5,25 дюйма. Говорят, что ее размеры соответствуют размерам салфеток для коктейля, которыми пользовались разработчики, обсуждавшие детали нового проекта в одном из бостонских баров.

1982 г.- фирма IBM приступила к выпуску компьютеров IBM РС с процессором Intel 8088, в котором были заложены принципы открытой архитектуры, благодаря которому каждый компьютер может собираться как из кубиков, с учетом имеющихся средств и с возможностью последующих замен блоков и добавления новых.

1988 г. – был создан первый вирус-“червь”, поражающий электронную почту.

1993 г. - выпуск компьютеров IBM РС с процессором Pentium.

  • Элементная база – большие интегральные схемы (БИС).
  • Соединение элементов – печатные платы.
  • Габариты – компактные ЭВМ, ноутбуки.
  • Быстродействие – 10 -100 млн. операций в секунду.
  • Эксплуатация – многопроцессорные и многомашинные комплексы, любые пользователи ЭВМ.
  • Программирование – базы и банки данных.
  • Оперативная память – 2 -5 Мбайт.
  • Телекоммуникационная обработка данных, объединение в компьютерные сети.

Подведем итог по IV поколению ЭВМ – заполним 4 строку таблицы “Поколения ЭВМ”

V поколение ЭВМ – разработки с 90-х годов ХХ века.

Элементной базой являются сверхбольшие интегральные схемы (СБИС) с использованием оптоэлектронных принципов (лазеры, голография).

В компьютерах пятого поколения произойдет качественный переход от обработки данных к обработке знаний, создание экспертных систем.

  • Традиционный компьютер
  • Интеллектуальный интерфейс, задача которого понять текст, написанный на естественном языке и содержащий условие задачи, и перевести его в работающую программу для компьютера.

Подведем итог по V поколению ЭВМ – заполним 5 строку таблицы “Поколения ЭВМ”

4. ЗАКРЕПЛЕНИЕ ИЗУЧЕННОГО МАТЕРИАЛА.

Повторение характерных черт поколений ЭВМ по таблице (Приложение 4)

5. ДОМАШНЕЕ ЗАДАНИЕ.

  • о развитии вычислительной техники и сети Интернет в Марий Эл.
  • о вкладе российских ученых в развитие вычислительной техники.

6. ВЫПОЛНЕНИЕ ЗАДАНИЙ ТЕСТА (Приложение 1).

Читайте также: