РОССИЙСКИЙ НАЦИОНАЛЬНЫЙ КОНТАКТНЫЙ ЦЕНТР
(Food NCP of Russia)

6-я Рамочная программа Европейского сообщества,
раздел 5 - Качество пищи и безопасность продуктов питания
English version

• Положения FP6
• 7 разделов FP6

• Общие сведения о FP7
• Технологические платформы FP7
• Новости и события FP7

• Направления раздела food, fp6
• Анкета и Заявка на участие в программе FP6 Food
• Заявленные проекты РФ [1,2,3,4,5]
• Поиски партнеров
• Консультации и помощь

• Food NCP of Russia
• Написать в Food NCP of Russia
• Ссылки по fp6
• Карта сайта
• Архив


Русская версия сайта «InJoy&Train»
  

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

Опубликовано: 09.10.2017

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

Программирование. Как начать писать программу?

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



Центральный процессор вашего компьютера понимает только программы, написанные на языке ноликов и единичек. Например, команда «прибавить константу 5 к числу, записанному в регистре AL» записывается так:

0000 0100 0000 0101

Здесь 0000 0100 — код операции «прибавить число к регистру AL», а 0000 0101 — двоичное представление числа 5.


НАПИСАТЬ МУЗЫКУ ЗА 1 МИНУТУ

На заре индустрии для ввода программы в компьютер нужно было либо перещёлкнуть сотни тумблеров на специальной панели (тумблер ВЫКЛ — нолик, тумблер ВКЛ — единичка), либо пробить дырочки в специальной перфокарте. Ошиблись в одной ячейке из тысячи — программа будет работать неправильно, будьте добры сами найти ошибку методом пристального взгляда.

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

Можно один раз хорошенько помучиться и написать на языке ноликов и единичек вспомогательную программу, которая называется ассемблер («сборщик»). Этот волшебный ассемблер принимает на вход человеко-читаемый текст и преобразует его в нолики и единички. Например, та же самая команда «прибавить константу 5 к числу, записанному в регистре AL» записывается на языке ассемблера x86 так:

ADD AL, 5

Думаю, вы согласитесь, что это всё-таки более читаемо, чем 0000 0100 0000 0101. Здесь хотя бы понятно, что речь идёт о сложении (ADD) и числе 5. Теперь уже дело ассемблера преобразовать эту строчку в 0000 0100 0000 0101. На языке ассемблера сложно писать большие программы, процессоры разных производителей могут требовать разных ассемблеров, но всё равно это был большой шаг вперёд.

Дальше инженерную мысль было не остановить. Нужно один раз помучиться, чтобы написать на ассемблере компилятор языка программирования, например Фортрана. Потом ещё немного помучиться, чтобы написать на Фортране компилятор Алгола. Затем передохнуть, помучиться и написать на Алголе компилятор языка CPL. Ещё немного мучений, и можно на основе CPL написать компилятор языка C. Дальше можно уже не мучиться и в свое удовольствие писать на C компиляторы C++, Java, C# и других современных языков. Впрочем, никто не запретит использовать Java чтобы написать ассемблер x86 и замкнуть рекурсию.


  

20.06.06.

6-8 июня 2006 г. в г. Санкт-Петербурге состоялся симпозиум:
«ЕС—Россия: перспективы сотрудничества в области биотехнологии в 7-й Рамочной программе»

Подробнее см. здесь >>> (Invitation,Info)

Во время работы Симпозиума была проведена школа молодых ученых «Биотехнология будущего»

Итоги конкурса см. здесь>>>

10.02.06

30-31 января 2006 г. в Институте биохимии им. А.Н. Баха РАН прошло 2-х дневное международное стартовое совещание по гранту «InJoy&Train»


Подробнее см. здесь >>>

Симпозиум «ЕС—Россия: перспективы научно-технического сотрудничества в области биотехнологии» и «ЕС—Россия — Ярмарка проектов по биотехнологии»

Подробнее см. здесь >>> (ENG)

Rambler's Top100

Optimized on MS Internet Explorer ver. 5.50
© INBI R.A.S., 2003-2009
Webmaster's e-mail
Карта Карта