Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Применение




Исторически можно рассматривать ассемблер как второе поколение языков программирования ЭВМ (если первым считать машинный код). Недостатки ассемблера, сложность разработки на нем больших программных комплексов привели к появлению языков третьего поколения - языков программирования высокого уровня (Фортран, Лисп, Кобол, Паскаль, Си и др.). Именно языки программирования высокого уровня и их наследники в основном используются в настоящее время в индустрии информационных технологий. Однако, языки ассемблера сохраняют свою нишу, обуславливаемую их уникальными преимуществами в части эффективности и возможности полного использования специфических средств конкретной платформы.

На ассемблере пишутся программы или фрагменты программ, для которых критически важны:

· быстродействие (драйверы, игры);

· объем используемой памяти (загрузочные сектора, встраиваемое (embedded) программное обеспечение, программы для микроконтроллеров и процессоров с ограниченными ресурсами, вирусы, программные защиты).

С использованием программирования на ассемблере производятся:

· Оптимизация критичных к скорости участков программ написанных на языке высокого уровня, таком как C++. Это особенно актуально для видеоприставок, у которых фиксированная производительность, и для мультимедийных кодеков, которые стремятся делать менее ресурсоемкими и более популярными.

· Создание операционных систем (ОС). ОС часто пишут на Си, языке, который специально был создан для написания одной из первых версий Unix. Аппаратно зависимые участки кода, такие, как загрузчик ОС, уровень абстрагирования от железа — HAL и ядро, часто пишутся на ассемблере. Ассемблерного кода в Windows или Linux совсем немного, поскольку авторы стремятся к переносимости и надежности, но тем не менее он присутствует. Некоторые любительские ОС, такие, как KolibriOS, целиком написаны на ассемблере. При этом KolibriOS помещается на дискету и содержит графический многооконный интерфейс.

· Программирование микроконтроллеров (МК) и других встраиваемых процессоров. По мнению профессор Танненбаума, как онтогенез повторяет филогенез, развитие МК повторяет историческое развитие компьютеров новейшего времени.[2] На сегодняшний день для программирования МК весьма часто применяют ассемблер. В МК приходится перемещать отдельные байты и биты между различными ячейками памяти. Программирование МК весьма важно, так как, по мнению Танненбаума, в машине и квартире современного цивилизованного человека в среднем содержится 50 микроконтроллеров.[3]

· Создание драйверов. Некоторые участки драйверов, взаимодействующие с железом, программируют на ассемблере. Хотя в целом в настоящее время драйверы стараются писать на языках высокого уровня в связи с повышенными требованиями к надежности. Надежность для драйверов играет особую роль, посколько в Windows NT и Linux драйверы работают в режиме ядра. Одна ошибка может привести к краху системы.

· Создание антивирусов и других защитных программ.

· Написание трансляторов языков программирования.




Поделиться с друзьями:


Дата добавления: 2014-01-03; Просмотров: 647; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.