Какие языки программирования использовались для полета на Луну? - PullRequest
30 голосов
/ 11 апреля 2009

Мне всегда было интересно: какие языки программирования использовались для полетов на Луну? Я понимаю, что не может быть ни одного ответа / языка, но это меня интересует.

Сколько человек работало над кодом для этих систем? Как это было проверено?

Ответы [ 6 ]

32 голосов
/ 11 апреля 2009

Не полный ответ, но немного больше информации:

"Бортовой компьютер Apollo Guidance Computer (AGC) был около 1 кубического фута с 2K 16-битной оперативной памяти и 36K жесткой памяти сердечника и веревки с медными проводами, пронизанными или не пропущенными через крошечные магнитные сердечники. -битные слова обычно были 14 битами данных (или двумя операционными кодами), 1 знаковым битом и 1 битом четности. Время цикла составляло 11,7 микросекунды. Программирование выполнялось на ассемблере и на языке интерпретации, в обратном польском."

http://www.hq.nasa.gov/alsj/a11/a11.1201-fm.html

Добавлено: BBC недавно опубликовала замечательную статью о AGC , включая интервью с дизайнерами и с «маленькими старушками», которые плели «веревочное ядро». Это не касается того, как программное обеспечение было разработано, закодировано или протестировано, но вам, вероятно, все равно будет интересно!

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

7 голосов
/ 21 июля 2014
5 голосов
/ 11 апреля 2009

Компьютер управления Apollo был запрограммирован на языке ассемблера.

2 голосов
/ 19 декабря 2012

Из "Цифровой человек и машина Аполлона в космическом полете" , Дэвид А. Минделл, MIT Press (C) 2008

стр. 149

Программное обеспечение Аполлона, полученное из базового проекта миссии на Марс. Дизайнер Хью-Блэр Смит создал язык под названием «Basic», низкоуровневый ассмелби язык около сорока инструкций (от базовый язык программирования высокого уровня, разработанный в Дартмуте на примерно в то же время). На вершине Бейсика было "Интерпретатор", детище Хэл Ланинг, язык, который был действительно набором процедур, чтобы сделать математические функции более высокого уровня, связанные с gudance и управление, в формате данных высокой точности.

1 голос
/ 11 апреля 2009

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

1 голос
/ 11 апреля 2009

Не совсем Луна, но Лиспинг в JPL .

...