Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как первые программисты написали программы для программирования без программ для программирования?

ИсторияПрограммирование
Симеон Дункан
  ·   · 127,8 K
Специалист в области разработки систем...  · 3 янв 2021

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

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

Вот такой интерфейс для ввода программ был на машинах до 1960-х годов:

https://upload.wikimedia.org/wikipedia/commons/6/6a/IBM360-65-1.corestore.jpg

(кстати, это пульт системы IBM S/360 – первого компьютера, в котором придумали делить память на байты, благодаря чему видны группы по 8 тумблеров).

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

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

Весь этот процессс развёртывания выполнения сложных программ при помощи многоэтапного усложения от самых простых называется bootstraping, или раскрутка.

7 экспертов согласны

Вадим, спасибо Вам за интереснейший ответ на уровне лекции. И за фото ЭВМ с Эрикой в правом нижнем углу.

Первый
Я программист с 1965 года. Окончил физический...  · 31 мар 2021
Писали на бланках с 4 или 5 колонками: код операции и три адреса. Карандашом - чтобы стереть, если неправильно. Регистров, насколько помню, не было - для обработки массива команда модифицировалась сложением с константой... Читать далее
Работаю разработчиком с 2017 года, фронтендер...  · 18 февр 2021
Что бы понять ответ на этот вопрос, я бы поррекомендовал ознакомиться с трудами фон Неймана и Тьюринга. Особенно впечатляет знаменитая статья Тьюринга, где он описывает вычислительную машину. Есть хорошая книга Петцольд -... Читать далее
Юрист. Пишу статьи и книги по правовым и политичес...  · 23 янв 2021

Вот так и "раскручивается" искусственный интеллект. Сначала биты, потом один другого, потом другой третьего... Через несколько десятилетий раскрутится так, что человека задвинет.

Вряд ли. ИИ пока не создан.

Электроника радиотехника электрика программировани...  · 14 янв 2021
Вадим Румянцев всё верно ответил, но хочу добавить, что тот же вопрос можно задать в отношении любых технологий и инструментария. Например, как с нуля создать точный измерительные прибор, например, хотя бы – микрометр? 1. Берём... Читать далее
Занимаюсь компьютерами с 1974 года. Первый...  · 4 февр 2021
Я начинал програмистскую карьеру с отечественных ЭВМ м-220 в середине 70-х . Программы писались в машинных кодах. То есть вообще без использования языков программирования, потом появились мнемокоды ( автокоды), для которых... Читать далее
Программу писали на перфокартах путем выдавливания окошек. Перфокарты в ЭВМ вводили уже другие специалисты. Если... Читать дальше
Первый
инвалид, раньше летал, починяю компьютеры, товары...  · 23 янв 2021

Для ЭВМ не пробовал, а вот для станка с чпу в конце 80-х доводилось "набивать" программу на перфоленте вручную специальным дыроколом.Необходимо было уметь читать программу с перфоленты "по дырочкам".

Я в училище с перфокарт программы читал, пока не поставили перфоратор, где вверху перфокарты печатался листинг.

Действующий программист. 1948 г.р. Закончил...  · 29 янв 2021
Я работаю программистом с 1971. В начале своей карьеры писал программы для БЭСМ-4 в машинных кодах. Ввод через перфокарты. До этого будучи студентом мехмата МГУ работал на Урале 2 (ввод данных через перфорированную кинопленку)... Читать далее

Как можно удаленно тумблерами щелкать-то и перфоленту заправлять?)))

Преподаватель экономики, увлекаюсь ИТ, историей...  · 10 февр 2021
Первый Бейсик для ПК Альтаир Билл Гейтс и Пол Аллен писали на мини-компьютере PDP-11. Гейтс писал интерпретатор Бейсик, а Аллен написал эмулятор ПК Альтаир для PDP-11 (грешным делом, не помню, какая там стояла ОС), на PDP-11 их... Читать далее
#define FALSE TRUE //счастливой отладки  · 15 февр 2021
Очень просто: 1. отжал рычаг 2. выставил восемь тумблеров в положение 0 или 1 3. вжал рычаг 4. байт ушёл на ферритовую матрицу 5. ... 6. профит а можно было пропустить пункт 1 а вместо пункта 3 нажимать БКК (Большую Красную... Читать далее