Спутник-1 был первым спутником в космосе. Был ли у него на борту язык программирования или он был чисто аналоговым?
в 1949 году фон Нейман выпустил язык Short Code. Fortran был изобретен в 1957 году. Sputnik запущен в 1957 году. Деннис Ритчи создал язык программирования C в Bell Laboratories в 1972 году.
edit: Спасибо за ответ и комментарий, очень ценю уровень знаний здесь.
Для целей моего расследования я рад уточнить вопрос как «первый машинный язык в космосе». Очевидно, что кодирование будет выполняться на земле.
Также в целях пояснения: будут исключены предоставленные аналоговые примеры. то есть: только машинный код работает на полупроводниковых чипах.
Еще вопрос интересующимся.
(Я интерпретирую вопрос как «на каком языке программирования было написано первое программное обеспечение для космического корабля?», Согласно обсуждению в комментариях выше.)
Это будет зависеть от ваших определений «компьютер» и «язык программирования». Почти наверняка первые цифровые компьютеры на космических кораблях были запрограммированы на языке ассемблера или микрокоде. Вы можете получить много исторических подробностей из Computers In Spaceflight: The NASA Experience .
Принятие языков высокого уровня на космических кораблях произошло намного позже, чем на земле, потому что, как правило, язык ассемблера более эффективен (поэтому вы можете выполнять аналогичную работу на более легком, менее энергоемком и/или более защищенном от радиации процессоре). и дает программисту более детальный контроль (таким образом, с меньшей вероятностью приведет к неожиданным результатам).
Самый ранний цифровой компьютер на космическом корабле, который я смог найти, это Ranger 3 , 1962 год:
Управление космическим кораблем обеспечивалось твердотельным компьютером и секвенсором, а также наземной системой управления.
«Секвенсор» предполагает, что он был запрограммирован с помощью физических переключателей и/или встроенного микрокода на довольно низком уровне, но я не нашел никаких реальных подробностей о самом компьютере.
Gemini был первым американским космическим кораблем с цифровым компьютером , начиная с Gemini 3 в 1965 году.
«Компьютер весил примерно 59 фунтов, выполнял более 7000 вычислений в секунду, и ему требовалось не больше места, чем в шляпной коробке — 1,35 кубических фута — на борту «Джемини». время цикла памяти 250 kc и время добавления 140 микросекунд.Память компьютера представляла собой конструкцию с произвольным доступом, неразрушающим считыванием, гибкой организацией команд и хранения данных.Его номинальная емкость составляла 4096 39-битных слов, а ее оперативная емкость составляла 12 288 13 -битные слова». (исторический архив IBM).
Это почти наверняка было запрограммировано на языке ассемблера, а не на языке высокого уровня.
Космический корабль Galileo , запущенный в 1989 году, является первым в США программным обеспечением для управления космическим кораблем без экипажа, написанным на языке высокого уровня :
JPL тщательно изучила требования к памяти и перспективы разработки программного обеспечения. Программы-прототипы были написаны на HAL/S и FORTRAN для командного компьютера и компьютера управления ориентацией. Идеи для содержания программ исходили из опыта "Вояджера" и руководства, написанного для NSSC-1. Первоначально проектный офис указал, что HAL будет использоваться для программирования всего полетного программного обеспечения. Когда в компиляторе, купленном для командных компьютеров и компьютеров с данными, обнаружилась неустранимая неэффективность, от HAL отказались для этой системы и заменили «структурированными макросами». HAL был сохранен для другой компьютерной системы. Хотя большинство микропроцессоров в научных экспериментах закодировано на ассемблере, один из них запрограммирован на FORTH, поэтому языки высокого уровня наконец появились на беспилотных космических кораблях.
Первым цифровым компьютером СССР в космосе был Argon 11c на борту беспилотного космического корабля серии Zond в 1964 году. Я предполагаю, что он был запрограммирован на языке ассемблера, а не на языке высокого уровня.
Представление числа - фиксированная точка. Длина слова - 14 бит, длина команды - 17 бит. Количество инструкций - 15.
Время выполнения: сложение — 30 мс, умножение — 160 мс.
Объем ОЗУ - 128 14-битных слов, объем ПЗУ - 4096 17-битных слов.
На первых космических кораблях «Союз» не было цифровых компьютеров; «Союз-Т» в 1980 году, по-видимому, был их первым пилотируемым космическим кораблем, управляемым бортовым цифровым компьютером « Аргон-16 » .
Представление чисел - фиксированная точка. Длина слова: 16 бит (слово), 32 бита (двойное слово); длина инструкции - 16 бит. Количество инструкций - 32.
Скорость: сложение - 5 мс, умножение - 45 мс.
Объем ОЗУ: 3 х 2 Кбайт, объем ПЗУ - 3 х 16 Кбайт.
Я предполагаю, что это также было запрограммировано на ассемблере, хотя с большим ПЗУ и более поздней датой о языке высокого уровня не могло быть и речи.
Первый язык высокого уровня на космическом корабле, о котором я знаю, это HAL/S космического челнока, впервые «доставленный» в 1973 году и первый полет где-то между 1977 и 1981 годами.
Первое судно, пересекшее линию Кармана и достигшее космоса - немецкая ракета Фау-2 - использовала программу для своего аналогового компьютера, реализованную в виде вращающегося диска неправильной формы с функцией вывода (ввода) кодирования радиуса (угла); диск, вращаемый двигателем, угол и радиус которого считываются потенциометрами, обеспечивающими расчеты для системы управления на основе данных гироскопов и акселерометров и приводящими в действие сервоприводы рулей.
Рассел Борогов
Уве
Уве
Макьен
Макьен
Райан
Макьен
хмахольм ушел за Монику
Макьен
джеймскф
Отметка
пользователь
Аникс