На главную Назад
Добро пожаловать, уважаемый посетитель!

Почемувасмоглобызаинтересоватьпрограммированиена языке

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

уровня как Бэйсик, Фортран и Паскаль. Возможно, вы уже знакомы по

крайнеймере содним языкомвысокого уровня.Если выпостоянно

пльзуютесьперсональнымкомпьютеромIBM,товызнаете,что

интерпритаторБэйсика являетсячастью системы.Зачем же возиться

ещес однимязыком программирования,тем болеес таким, который

сулит определенныетрудности? Очевидно, дажерасполагая современ-

ными могучими языками, вы все еще нуждаетесь в ассемблере из-за его

эффективности и точности.

Ассемблерныепрограммымогутбытьоченьэффективными.Из

программистов,с равныминавыками испособностями, работающий на

языкеассемблерасоздастпрограммуболеекомпактнуюи быстро-

действущую, чемтакая же программа,написанная на языкевысокого

уровня.Этотакпрактическидлявсехнебольшихилисредних

программ. Ксожалению, по мере возрастанияразмеров, программы на

языкеассемблера теряютчасть своихпреимуществ. Этопроисходит

из-за необходимого в ассемблернойпрограмме внимания к деалям. Как

выувидите, языкассемблера требуетот васпланирования каждого

действия компьютера.В небольших программахэто позволяет оптими-

зировать работупрограммы с аппаратнымисредствами. В большихже

программахогромное количестводеталей можетпомешать вам эффек-

тивно работать над самой программой, даже если отдельные компоненты

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

языке ассемблера отвечает потребностям не каждой программы.

Программы на языке ассемблера очень точны. Поскольку этот язык

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

обеспечением, ассемблерная программа может делать то, что недоступ-

но никакойдругой программе .Несомненно, что впрограммировании

устройствввода-вывода,гдетребуетсяконтрольнадотдельными

разрядамирегистровустроиства,программированиенаязыке

ассемблера - единственный подходящий выбор.

Ясно,чтоэффективностьиточностьязыкаассемблера дают

определенныепреимущества.Ноегодетализированностьсоздает и

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

язык ассемблера?

Конечновыдолжны пользоватьсяпрограммаминаязыке

ассемблера, когда нет другого способа написать программу. Например,

программисты фирмы IBM писалис использованием процедур ассемблера

все программы управления устройствамиввода-вывода для IBM PC. Для

управления устройствамиввода-выводаисистемойпрерываний,

потребоваласьтаточностьязыка ассемблеракоторуюнеможет

обеспечитьни одиндругой языкпрограммирования. Аналогично,на

языкеассемблеравфирмеIBMписалисьпроцедурыдиагностики,

которые должны проверять каждую деталь аппаратуры.

Язык ассемблера необходим также и в тех случаях, когда главными

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

исполнения или конечный размер программы. Библиотека математических

процедурФортрана -пример программы,требующей хороших характе-

ристиккаквотношениивремени,таки размера. Математические

процедуры являтсячастью любой программы наФортране, поэтому они

должны заниматькак можно меньше места.Кроме того, эти процедуры

управляют всеми математическими функциями в фортрановской программе

и часто используются. Следовательно, они должны исполняться быстро.

Какая программане подходит для языкаассемблера? Конечно, вы

можете написать на нем любую программу, однако с большой программой

лучшеработатьвязыкевысокогоуровня,такомкак Бэйсик или

Паскаль. Эти языки позволяют вам сосредоточиться на своей проблеме.

Вамнеприходитсянепосредственноиметьделостонкостями

аппаратногооборудованияипроцессора.Языкивысокогоуровня

позволяют вам отступить назад и за деревьями увидеть лес.

Очевидно далее, что вынуждаетесь в соединении программ языка

ассемблера спрограммами языков высокого уровня.Эдесь мы ограни-

чимсяпрограммированием наязыкеассемблерадля техзадач, для

которыхон хорошоподходит, такихкак управление вводом-выводом.

Заключительная жеглава книги посвященапрямо проблеме соединения

программ на языке ассемблера с другми языками программирования. Эти

методыпредоставляют вамвсе лучшее,что естьв обоих мирах. Вы

можете,когданеобходимы точность и эффективность,использовать

процедурына языкеассемблера -и процедурывысокого уровня для

программы в целом. Все что вы для этого должны сделать - сцепить их

вместе.

Ипоследняя причинадля изученияпрограммирования наязыке

ассемблера.Толькочерезнаписаниепрограммнаэтомуровне

детализации выможете понять какработает машина насамом нижнем

уровне.Если выхотите узнатьо компьютеревсе, выдолжны быть

знакомы с его языком ассемблера. Единственный способ добиться этого

- писать программы на этом языке. Простое чтение этой книги дела не

сдвинет.


 

Mail.ru