74546

Программирование. Языки программирования низкого и высокого уровней

Доклад

Информатика, кибернетика и программирование

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

Русский

2015-01-04

25.55 KB

9 чел.

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

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

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

 

Языки программирования низкого уровня

Первым компьютерам приходилось программировать двоичными машинными кодами. Однако программировать таким образом - достаточно трудоемкая и сложная задача. Для упрощения этой задачи стали появляться языки программирования низкого уровня, которые позволяли задавать машинные команды в более понятном для человека виде. Для преобразования их в двоичный код были созданы специальные программы - трансляторы.

Пример машинного кода и представления его на ассемблере

Трансляторы делятся на:

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

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

Примером языка низкого уровня является ассемблер. Языки низкого уровня ориентированы на конкретный тип процессора и учитывают его особенности, поэтому для переноса программы на ассемблере на другую аппаратную платформу ее нужно почти полностью переписать. Определенные различия имеются и в синтаксисе программ под разные компиляторы. Правда, центральные процессоры для компьютеров фирм AMD и Intel практически совместимы и отличаются лишь некоторыми специфическими командами. А вот специализированные процессоры для других устройств, например, видеокарт, телефонов содержат существенные различия.

Преимущества

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

Недостатки

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

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

значительное время разработки больших и сложных программ.

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

Ассемблер - язык низкого уровня, что широко применяется до сих пор.

 

Языки программирования высокого уровня

Можно сказать более понятными человеку, чем компьютеру. Особенности конкретных компьютерных архитектур в них не учитываются, поэтому созданные программы легко переносятся с компьютера на компьютер. В основном достаточно просто перекомпилировать программу под определенную компьютерную архитектурную и операционную систему. Разрабатывать программы на таких языках гораздо проще и ошибок допускается меньше. Значительно сокращается время разработки программы, что особенно важно при работе над большими программными проектами.

К языкам программирования высокого уровня относятся:

Фортран

Кобол

Алгол

Pascal

Java

C

C++

C#

Objective C

Smalltalk

Delphi

Недостатком языков высокого уровня является больший размер программ по сравнению с программами на языке низкого уровня. Поэтому в основном языки высокого уровня используются для разработок программного обеспечения компьютеров и устройств, которые имеют большой объем памяти. А разные подвиды ассемблера применяются для программирования других устройств, где критичным является размер программы.


 

А также другие работы, которые могут Вас заинтересовать

67188. Рефлекс - стереотипная приспособительная реакция 111.5 KB
  Рефлексы и сегодня принято объяснять как проявление отражательной деятельности центральной нервной системы на различные раздражения. Сеченов объяснял это так: Чистые рефлексы или отражённые движения всего лучше наблюдать на обезглавленных животных и преимущественно на лягушке...
67189. Синонимия. Понятие синонимии. Типы синонимов 63.5 KB
  Синонимы могут отличаться друг от друга либо оттенками значений либо стилистической окраской либо сочетаемостью либо совокупностью этих признаков. Синонимы обозначают одно и то же понятие но указывают на разные признаки понятия т. Синонимы образуют синонимические пары и ряды.
67190. Словообразование. Понятие о словообразовании 184.5 KB
  Термин словообразование используется в двух значениях: образование слов называемых производными обычно на базе однокорневых слов по существующим в языке моделям с помощью аффиксации словосложения конверсии и других формальных средств; раздел языкознания изучающий все аспекты создания строения...
67191. ЧУГУНЫ 32.5 KB
  Излом их светлый поэтому такие чугуны называются белыми. Белые чугуны используются главным образом как передельные чугуны. Доэвтектический белый чугун содержащий 22 29С используется для получения ковкого чугуна эвтектический белый чугун легкоплавкий...
67192. Роздрібний товарооборот. Фактори роздрібного товарообороту 24.93 KB
  Фактори що визначають обсяги структуру та перспективи розвитку роздрібного товарообороту підприємства. Фактори що визначають обсяги структуру та перспективи розвитку роздрібного товарообороту підприємства. Обсяг структуру та перспективи розвитку товарообороту конкретного підприємства...
67193. Інтернет-технологіїпредставленнязнань 334.66 KB
  Знання, представлені експертом:Папір - метод читання оптичний, обєм середній, перезапис неможливий. Перфокарта - метод читання оптичний, обєм малий, перезапис неможливий. ГМД - метод читання магнітний, об?єм середній, перезапис можливий. ЖМД - метод читання магнітний
67194. Сетевые модели (N-схемы). Сети Петри 264 KB
  Теоретические основы сетей Петри: принципы построения алгоритмы поведения. Сети Петри были разработаны и используются для моделирования систем которые содержат взаимодействующие параллельные компоненты например аппаратное и программное обеспечение...