| Предыдущая версия справа и слева
Предыдущая версия
Следующая версия
|
Предыдущая версия
|
computers_and_computing [2025/10/13 23:30] iadenisov [Компьютеры и вычисления] |
computers_and_computing [2025/10/14 00:56] (текущий) iadenisov [Компьютеры и вычисления] |
| https://people.inf.ethz.ch/wirth/Miscellaneous/ComputersAndComputing.pdf | https://people.inf.ethz.ch/wirth/Miscellaneous/ComputersAndComputing.pdf |
| |
| За основу взят [[https://forum.oberoncore.ru/viewtopic.php?f=30&t=6868&p=119624#p119610|перевод Dimik]] | Перевод [[https://forum.oberoncore.ru/viewtopic.php?f=30&t=6868&p=119624#p119610|Dimik]] с правками Ивана Денисова |
| | |
| Автор опубликованного перевода, Иван Денисов | |
| ===== Эпоха становления ===== | ===== Эпоха становления ===== |
| |
| Историки относят зарождение вычислительной техники далеко назад, в средние века. Мы же предпочитаем начать с того момента, когда компьютеры стали коммерчески доступными и начали играть важную роль в бизнесе и науке. Это было примерно в 1960 году или даже немного раньше. Всего пара изобретений легли в основу развития такой доступности. | Историки относят зарождение вычислительной техники далеко назад, в средние века. Здесь мы всё же начнём рассказ с момента, когда компьютеры стали коммерчески доступными, и начали играть важную роль в бизнесе и науке. Это было примерно в 1960 году или даже немного раньше. Всего несколько изобретений легли в основу развития такой доступности. |
| |
| На физическом уровне, --- это было появление электроники, которое сделало компьютеры предметами интереса. Электроника обеспечивала необходимую скорость. До этого времени активными элементами электронных схем были электронные лампы. Нагретые катоды испускали электроны, которые всасывались окружающим анодом. Между ними находилась сетка, позволявшая управлять потоком электронов, прикладывая отрицательное поле. Ранние компьютеры содержали тысячи таких ламп, которые из-за нагрева катода и высокого напряжения на аноде потребляли значительное количество энергии, по нескольку ватт каждая. С их многочисленными лампами и мощными источниками питания эти ранние | На физическом уровне, --- это было появление электроники, которое сделало компьютеры предметами интереса. Электроника обеспечила необходимую скорость. До этого времени активными элементами электронных схем были электронные лампы. Нагретые катоды испускали электроны, которые всасывались окружающим анодом. Между ними находилась сетка, позволявшая управлять потоком электронов, прикладывая отрицательное поле. Ранние компьютеры содержали тысячи таких ламп, которые из-за нагрева катода и высокого напряжения на аноде потребляли значительное количество энергии, по нескольку ватт каждая. С их многочисленными лампами и мощными источниками питания эти ранние |
| компьютеры были довольно огромными и занимали целые комнаты. | компьютеры были довольно огромными и занимали целые комнаты. |
| |
| {{ :img1.png |}} | {{ :img1.png |}} |
| |
| Фон Нейман ввел две фундаментальные концепции. Во-первых, два хранилища были объединены. Это позволило компьютеру генерировать данные, а затем интерпретировать их как инструкции. Таким образом, компьютер превратился из специального устройства (с всегда одинаковой программой) в //универсальную машину// --- программируемый компьютер. И это то, что отличает компьютер от всех других технических устройств вплоть до сегодняшнего д. | Фон Нейман ввел две фундаментальные концепции. Во-первых, два хранилища были объединены. Это позволило компьютеру генерировать данные, а затем интерпретировать их как инструкции. Таким образом, компьютер превратился из специального устройства (со всегда одинаковой программой) в //универсальную машину// --- программируемый компьютер. И это то, что отличает компьютер от всех других технических устройств вплоть до сегодняшнего дня. |
| |
| Второй основополагающей идей была условная инструкция. Она имеет различный результат в зависимости от ранее вычисленных значений, т.е. состояния машины. | Второй основополагающей идей была условная инструкция. Она имеет различный результат в зависимости от ранее вычисленных значений, т.е. состояния машины. |
| ===== Годы пионеров ===== | ===== Годы пионеров ===== |
| |
| В 1959 году в Квебеке (Канада) я впервые имел дело с компьютером на курсе по численному анализу, который вел профессор Goodspeed. Но компьютер не соответствовал имени профессора. На самом деле, он был не только медленным, но и "падал" всякий раз, когда мы составляли небольшую программу. Таким образом, мое первое знакомство с компьютером было мрачным и обескураживающим. Я не могу объяснить, как я сохранил интерес к вычислительной технике. Но я чувствовал, что это будет важно в будущем. | Это было в 1959 году в Квебеке (Канада), когда я впервые имел дело с компьютером. Я записался на курс по численному анализу, который вел профессор Goodspeed (дословный перевод фамилии профессора с английского <<Хорошая скорость>>). Но компьютер не соответствовал имени профессора. На самом деле, он был не только медленным, но и <<падал>> всякий раз, когда мы составляли небольшую программу в качестве части упражнений. Таким образом, мое первое знакомство с компьютером было печальным и обескураживающим. Я не могу объяснить, как я сохранил интерес к вычислительной технике. Однако я чувствовал, что это будет важно в будущем. |
| | |
| | Доступным компьютером был Alwac III-3E. Он был основан на тысячах электронных ламп, в основном на двойные триоды, и занимал целую комнату. Срок службы одной лампы 10 000 часов. Следовательно, можно было предположить, что одна из них --- а значит, и вся система --- будет выходить из строя каждые несколько часов. Так и случалось! Программирование осуществлялось путём составления таблиц инструкций в шестнадцатеричном коде. Я подумал, что тут есть потенциал для улучшения. |
| |
| Доступным компьютером был Alwac III-3E c тысячами электронных ламп, и занимавший целую комнату. Срок службы одной лампы 10'000 часов. Можно было рассчитать, что вся система будет умирать каждые несколько часов. Так и происходило! Программирование осуществлялось путем составления таблиц инструкций в шестнадцатеричном коде. Я думал ‒ что в этом был потенциал для улучшения. | Мой второй подход к компьютерам состоялся годом позднее в Беркли. Там был большой компьютер IBM 704, один из первых компьютеров, на транзисторах вместо ламп, и поэтому гораздо более надежный. Доступ к нему был только через колоды перфокарт, которые доставлялись в Вычислительный центр. Карточные колоды от различных клиентов складывались операторами, и система автоматически обрабатывала одну колоду за другой. Это называлось //пакетная обработка//. Результаты можно было получить через несколько часов или даже дней на бесконечной бумаге в виде текстов, состоящих из цифр и заглавных букв. Программирование осуществлялось на новом языке //Фортран// (Трансляция формул). Это было определённым улучшением по сравнению с шестнадцатеричным кодом, но я больше не мог понимать, как проводится управление компьютером. И снова я почувствовал, что есть возможности для совершенствования. |
| |
| Второй раз я попробовал компьютеры через год в Беркли. Там был большой компьютер IBM 704, один из первых компьютеров, на транзисторах вместо ламп, и поэтому гораздо более надежный. Доступ к нему был только через колоды перфокарт, которые доставлялись в Вычислительный центр. Карточные колоды от различных клиентов складывались операторами, и система автоматически обрабатывала одну колоду за другой (пакетная обработка). Результаты были через несколько часов или даже дней, на бумаге, в виде текстов, состоящих из цифр и заглавных букв. Программирование осуществлялось на новом языке Фортран (Трансляция формул). Это было улучшение по сравнению с шестнадцатеричным кодом, но я не мог понять, как работает компьютер. И снова я чувствовал, что здесь есть возможности для совершенствования. | В 1960-1965 годах большие удаленные компьютеры преобладали в мире вычислений. Они назывались //мэйнфреймами// и занимали большие комнаты, оснащённые системами кондиционирования воздуха. Все марки были почти одинаковыми, различаясь размером слов, объемом памяти и, конечно, --- скоростью выполнения. Они имели один или два регистра-аккумулятора. Три нововведения заслуживают упоминания. Первое -- это индексный регистр, значение которого добавляется к адресу операнда во время цикла выборки. |
| |
| В 1960-1965 годах доминировали большие, удаленные компьютеры. Они назывались мэйнфреймами и занимали большие помещения. Все марки были почти одинаковыми, различаясь размером слов, объемом памяти и скоростью выполнения. Они имели один или два регистра аккумулятора. Три нововведения заслуживают упоминания: | --- //[[d.ivan.krsk@gmail.com|Иван Денисов]] вычитал перевод до этого места 2025/10/13 23:52// |
| |
| Первое ‒ это индексный регистр, значение которого добавляется к адресу операнда во время цикла выборки. | |
| |
| Охарактеризуем IBM 704. Он имел память из 32768 (215) слов по 36 бит каждое. В то время наборы символов состояли из 64 (26) символов и размер слов был кратен 6 (6-битные байты!). Числа хранились в знаково-величинной форме: один бит для знака, 35 бит для абсолютного значения. Ядро 704 состояло из 36-битного регистра аккумулятора (в котором якобы накапливались суммы), регистра MQ (в котором хранился множитель и три 15-битных индексных регистра. | Охарактеризуем IBM 704. Он имел память из 32768 (= 2<sup>15</sup>) слов по 36 бит каждое. В то время наборы символов состояли из 64 (= 2<sup>6</sup>) символов и размер слов был кратен 6 (6-битные байты!). Числа хранились в знаково-величинной форме: один бит для знака, 35 бит для абсолютного значения. Ядро 704 состояло из 36-битного регистра-аккумулятора (в котором якобы накапливались суммы), регистра MQ (в котором хранился множитель и три 15-битных индексных регистра. |
| |
| Существовало два формата инструкций: | Существовало два формата инструкций: |