Добро пожаловать на наш сайт по языку ассемблер

Добро пожаловать на наш сайт по языку ассемблер

Язык ассемблера

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

 Язык ассемблера превращается в исполняемый код машины, утилита которая это делает называется ассемблером; процесс преобразования называется компиляцией или сборки кода ассемблера. 

Програмный код на ассемблер.

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

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

Применение ассемблера

Раньше все операционные писались именно на ассемблере, но с появлением Си(который является усовершенствованным или упрощенным для человека вариантом ассемблера ) ОС стали писать на последнем.
Но и в наше время есть ОС которые написаны на языку ассемблера это menuetos, kolibrios и другие, эти системы очень компактны и быстры по сравнению со своими собратьями на Си. К примеру menuetos помещаться на дискете, поддерживает сеть(ethernet, ftp,http..), для запуска достаточно 16 мегабайт(8 мегабайт нужно для kolibrios ) оперативной памяти, система многозадачная также есть 64 битная версия ОС, и соответственно имеет графический интерфейс, также есть возможность русификации.

Рабочий стол Колибри ОС. Операционная система полностью написана на ассемблере (FASM)
Рабочий стол Колибри ОС. Операционная система полностью написана на ассемблере (FASM)

История Ассемблера

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

Ассемблер был сначала развит в 1950-ых годах, когда он упоминался как язык программирования второго поколения. Он устранил большую часть подверженного ошибкам и отнимающего много времени программирования первого поколения, необходимого для самых ранних компьютеров, освободил программистов от запоминания числовых кодексов и вычисление адресов. Он когда-то широко использовались для всех видов программирования. Однако, к 1980-ым годам (1990-ые на маленьких компьютерах) его использование было в значительной степени вытеснено языками высокого уровня в поиске улучшенной программной производительности. Сегодня, ассемблер используется, прежде всего, для прямой манипуляции аппаратных средств, доступа к специализированным инструкциям процессора или обращения к критическим проблемам работы. Типичное использование — водители устройства, вложенные системы низкого уровня и системы реального времени.

Ассемблер используется, чтобы перевести утверждения ассемблера на целевой компьютерный машинный код. Ассемблер выполняет более или менее изоморфный перевод (непосредственная картография) из мнемонических утверждений в машинные инструкции и данные. Это отличает его от языков высокого уровня, на которых единственное утверждение вообще приводит ко многим машинным инструкциям. Используется компилятор, аналогичный ассемблеру, чтобы перевести языковые утверждения высокого уровня на машинный код; или переводчик выполняет утверждения непосредственно.

Большинство сложных ассемблеров предлагают дополнительные механизмы, чтобы облегчить развитие программы, управлять процессом собрания и отладкой помощи. В частности, самые современные ассемблеры (хотя многие уже были доступны больше 40 лет) включают макросредства, которые названы макроассемблерами.

Здесь Вы сможете изучить язык ассемблера с нуля и  освоить основы программирования на ассемблере.​