Часто людям приходится делать что-то, а потом повторять те же действия сразу или позже. Когда человек первый раз сталкивается с задачей, то обдумывает последовательность действий для ее решения. Другими словами, человек разрабатывает алгоритм решения задачи. Придумав удачный алгоритм, человек его запоминает, и последующее выполнение похожих задач происходит уже на автомате, не думая. Когда мы действуем согласно какой-либо инструкции, не обдумывая ее смысл, то являемся просто исполнителями.
Компьютер может быть лучшим исполнителем, чем человек, хотя бы за счет высокой скорости выполнения действий. У компьютера тоже есть память. И в нее можно записать последовательность действий, то есть алгоритм, для решения той или иной задачи. Машина будет следовать заложенным в ней инструкциям раз за разом и быстро выполнять их.
Однако запрограммировать компьютер, то есть записать в него алгоритм, вложить программу действий, все равно надо. И сделать это может только человек. Человек разрабатывает последовательность действий для решения задачи и сохраняет их в памяти машины. Сам по себе компьютер ничего не понимает, он просто железо, исполняющее лишь то, что было записано в его память.
Как программисты написали первую программу без программы?
Разработка алгоритмов для решения сложных задач — трудоемкий и творческий процесс, который зачастую требует знаний из разных областей (например, математики, программирования и предметной области, для которой создается программа). Однако часто выгоды, получаемые при выполнении алгоритма с помощью компьютера, перекрывают затраты на его разработку.
Что такое компьютерная программа
Предположим, что поместить в память компьютера алгоритмы, написанные человеком на естественных языках, не проблема. Но вычислительная машина не понимает такие языки. Для нее нужны инструкции на особом языке — языке программирования. Алгоритм, описанный с помощью языка программирования, является компьютерной программой.
Языки программирования и их история
Так какой же язык понятен компьютеру, в каком виде следует вносить информацию в его память, чтобы он потом делал то, что мы хотим. Компьютер – это электронное вычислительное устройство. Вычислительное! Он работает с числами, складывает, вычитает, сравнивает. Больше ни с чем. Но как же?
Ведь мы привыкли обрабатывать на компьютере не только числовую информацию, также текстовую и графическую. Поэтому нам кажется, что компьютер работает не только с числами. Фокус заключается в том, что любую информацию, в том числе текстовую и графическую можно закодировать числами. Все действия компьютер выполняет над числами. И только когда мы обращаемся к данным, эти числа определенным образом декодируются.
Первые программы для ЭВМ программисты писали именно числами. Это сложно для человека. Представьте, что все, что вы хотите сказать, нужно сказать, оперируя исключительно числами. Дело усложнялось еще тем, что компьютеры как вычислительные машины проще создавать таким образом, чтобы они считали в двоичной системе счисления. Записи программ получались слишком длинными.
Как создать программу без программирования. Не зная языка программирования
Для их сокращения пользовались восьмеричной и шестнадцатеричной системами счисления. Для записи программы с помощью чисел использовались машинные языки программирования.
Программировать работу компьютера в машинных кодах трудно, так как думать числами неестественно для человека. Мы привыкли думать словами. А что если сопоставить часто используемым группам чисел слова, а затем написать программу перевода слов в числа, понятные компьютеру.
В таком случае программист сможет описать алгоритм словами, затем передать его специальной программе-переводчику — транслятору, который преобразует словесный алгоритм в машинный код, понятный компьютеру. И человеку хорошо и компьютеру понятно. От человека требовалось только создать этот самый транслятор. Первыми языками программирования, где использовались слова, были ассемблеры.
Чуть позже программисты стали замечать, что почти все программирование сводится к вводу и выводу данных, выбору той или иной ветки выполнения программы и повторению одних и тех же действий определенное количество раз. Кроме того, некоторые части программы много раз используются в ней в разных местах. Так пришли к выводу о том, что программа должна представлять собой структуру из обособленных частей. Стало развиваться структурное программирование.
Вопрос Как программисты написали первую программу для программирования без программы для программирования?
Как сделали станок без станка для вытачивания деталей этого станка? А что было первым, курица или яйцо? Ответ на такие вопросы своими силами развивает мышление, нахождение же таких ответов в инете развивает твой поиск и тд и тп.
slava
Регистрация 17 Июн 2013 Сообщения 70 Репутация 0 Спасибо 0 Монет 0
Даже самая первая машина имела процессор и электронную схему, предназначенную для работы по программе и предусматривала средства для ввода программы и т. д.
Похожие темы
Ответы 5 Просмотры 167
Ответы 4 Просмотры 106
- specia7one
- 11 Июл 2022
- Компьютерные вопросы
Ответы 4 Просмотры 184
Ответы 5 Просмотры 128
- ghjktgkty
- 26 Янв 2023
- Компьютерные вопросы
Ответы 4 Просмотры 124
Поделиться:
- Крипта, интернет, софт
- Разработка игрового ПО
- Компьютерные вопросы
О нас
4cheaT один из старейших форумов рунета. Мы работаем, чтобы вы могли отдыхать с комфортом. Наш форум посвящён онлайн играм, игровым разработкам и модификациям. На нашем онлайн рынке вы можете купить и продать любые онлайн ценности и услуги. Гейминг объединяет криптанов, программистов и вебмастеров!
Разделы форума
Важное
Мы в соц. сетях
- Обратная связь
- Условия и правила
- Политика конфиденциальности
- Помощь
- RSS
На данном сайте используются файлы cookie, чтобы персонализировать контент и сохранить Ваш вход в систему, если Вы зарегистрируетесь.
Продолжая использовать этот сайт, Вы соглашаетесь на использование наших файлов cookie.
Источник: 4cht.com
3.4. История языков программирования Первые шаги автоматизации программирования.
Программы для первых ЭВМ программисты писали на языках машинных команд, которые были ориентированы на конкретные машины и конкретных пользователей. Первыми «инструментами», которые экономили труд программистов, стали подпрограммы.
В августе 1944 года для релейной машины Марк-I под руководством Грейс Хоппер (женщина-программист, морской офицер ВМФ США) была написана первая подпрограмма для вычисления SIN (X). В 1949 году Джон Моучли (один из создателей ЭВМ ENIAC) разработал систему Short Code, которую можно считать предшественницей языков программирования высокого уровня.
Программист записывал решаемую задачу в виде математических формул, преобразовывал формулы в двухбуквенные коды. В дальнейшем специальная программа переводила эти коды в двоичный машинный код. Таким образом, Дж. Моучли разработал один из первых примитивных интерпретаторов. А в 1951 году Г. Хоппер создала первый компилятор А-0.
Ею же впервые был введен этот термин.
Первые языки высокого уровня – языки процедурного программирования.
Разработчики языка программирования (под руководством Г.Хоппер) поставили цель создать такой новый язык, который позволил бы программировать на языке, близком к обычному английскому.
Необходимость таких языков, приближенных к разговорному, Г. Хоппер связывала с тем, что область применения ЭВМ будут расширяться, в связи с чем будет расти и круг пользователей. По словам Г. Хоппер, следует оставить попытки «превратить их всех в математиков».
В 1959 году был разработан язык COBOL ( Common Business Oriented Language ) (Кобол) – язык программирования высокого уровня для решения задач бизнеса. Консультантом при создании языка COBOL вновь выступила Г. Хоппер. В 1954 году публикуется сообщение о создании языка FORTRAN ( FORmula TRANslation ) (Фортран). Местом рождения языка стала штаб-квартира фирмы IBM в Нью-Йорке. Одним из главных разработчиков является Джон Бэкус. Он же стал автором НФБ (нормальная форма Бэкуса), которая используется для описания синтаксиса многих языков программирования .
В тот же период в европейских странах и в СССР популярным становится язык ALGOL (algorithmic language). Как и FORTRAN, он ориентировался на математические задачи. В нем была реализована передовая для того времени технология программирования – структурное программирование.
В 60-е – 70-е годы прошлого столетия стало появляться большое количество новых языков программирования, но не все из них выдержали испытание временем. К языкам – долгожителям следует отнести язык BASIC, разработанный в Дартмутском университете в 1964 году под руководством Джона Кемени и Томаса Курца. Наибольшее распространение BASIC получил на микро-ЭВМ и персональных компьютерах. В 1991 году появилась первая версия языка VISUAL BASIC.
Для первых языков программирования характерной чертой была предметная ориентация. В эпоху ЭВМ третьего поколения большое распространение получил язык PL/1 (Program Language/1), разработанный фирмой IBM. Это был первый язык, претендовавший на универсальность, т. е. на возможность решать любые задачи: вычислительные, обработки текстов, накопления и поиска информации.
PL/1 оказался слишком сложным языком. Транслятор с него недостаточно оптимальный, содержащий ряд не выявленных ошибок. По этой причине этот язык не получил распространения. Однако линия на универсализацию языков была продолжена. Старые языки были модернизированы в универсальные варианты.
Примером тому стал FORTRAN 77 программирования.
Языки структурного программирования.
Значительным событием в истории языков программирования стало создание в 1971 году языка PASCAL. Его автором является Николаус Вирт, профессор из Швейцарии. Вирт назвал этот язык в честь французского математика и физика Блеза Паскаля, который в 1642 году сконструировал вычислительный механизм. Первоначально PASCAL создавался как язык для обучения.
В нем ярко выражена структурная линия программирования. Широкое практическое применение язык получил с появлением персональных компьютеров в версии Turbo PASCAL. Язык программирования С (Си) был задуман как инструментальный язык для разработки операционных систем. Он создавался одновременно с операционной системой UNIX.
Авторами этого языка и ОС UNIX являются американские программисты Денис Ричи и Кеннет Томпсон. Первоначально К. Томпсон начал писать ОС UNIX на языке FORTRAN. В дальнейшем был создан язык Си, и в 1973 году ядро операционной системы вместе с программами – утилитами было переписано на Си. Этот язык является структурным языком высокого уровня. В настоящее время он применяется для разработки не только операционных систем, но и трансляторов, системных и прикладных программ.
Источник: studfile.net