adfun.ru
 
BIGLIB
  большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно
 
АСТРОЛОГИЯ
  книги по астрологии
 
КРИМИНАЛ
  книги про криминал
 
ДЕТЕКТИВЫ
  детективы известных
   писателей
 
ФАНТАСТИКА
  фентези, фантастика,   фантастические повести
 
ПРИКЛЮЧЕНИЯ
  книги про приключения,   путешествия
 
ПОЛИТИКА
  книги про политиков,   репрессии
 
ПСИХОЛОГИЯ
  разнообразная литература   по психологии
 
КЛАССИКА
  классическая литература
 
КОМПЬЮТЕРНАЯ
  ЛИТЕРАТУРА
  про компютерное железо,   документация, языки   программирования
 
РЕЛИГИЯ, АТЕИЗМ
  книги про религию
 
ФИЛОСОФИЯ
  книги, которые заставляют   задуматься над   окружающим тебя миром.
 
ЭНЦИКЛОПЕДИИ
  самые интересные   энциклопедии на
   разные темы
 
МЕДИЦИНА
  медицинские книги,   методички,
   народные лечебники
 
КУЛИНАРИЯ
  рецепты тортов,   консервирование,
  все о спиртных
  напитках.
 
СТИХИ
  стихи популярных и не   очень авторов
 
ТВОРЧЕСТВО
  народное творчество,   стихи, песни и т.д.
 
ЮМОР
  анекдоты, приколы,   смешные истории
 
ЛЮБОВНЫЙ РОМАН
  мир высоких чувств и   любовных грез
 
ЭРОТИКА
  эротические рассказы,   книги о технике секса,   кама-сутра и др.




adfun.ru
Rambler's Top100 Rambler's Top100
    НА ГЛАВНУЮ
    РЕФЕРАТЫ
    ТОСТЫ
    ТЕСТЫ
    АВТО
    ДЛЯ СТУДЕНТА
    КНИГИ
    КОНТАКТ
 
Справочник по системе программирования Турбо Ассемблер 2.0
Автор ""
Размер 416131 Байт
Страница 22 из 51
СКАЧАТЬ КНИГУ ЦЕЛИКОМ

можно понять, что функция BIOS "Установить режим"  избавляет  вас
от большого объема работы.

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

     Основным справочником по функциям BIOS является  "Справочное
руководство по интерфейсу с базовой системой ввода-вывода".



          Иногда необходимо обратиться к аппаратным средствам
-----------------------------------------------------------------

     Теперь, когда вы знакомы со всеми доводами в пользу  необхо-
димости  использования функций DOS (или, если это абсолютно необ-
ходимо, функций BIOS), пришло время  рассказать  о  тех  случаях,
когда можно посоветовать вам обратиться непосредственно к аппара-
туре. Например,  программное обеспечение  коммуникаций  управляет
последовательным портом IBM PC непосредственно с помощью инструк-
ций IN и OUT,  поскольку ни DOS, ни BIOS не предусматривают адек-
ватной  поддержки для последовательных коммуникаций.  Аналогично,
высокопроизводительная графика должна выполняться с  помощью  не-
посредственного  обращения к памяти дисплея,  так как DOS не под-
держивает графику, а BIOS делает это довольно медленно.

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


Другие ресурсы
-----------------------------------------------------------------

     Для программиста, работающего на Ассемблере, в IBM  PC  пре-
дусмотрены  также  другие программные и аппаратные ресурсы. Мы не
будем все их рассматривать, приведем только кратко  некоторые  из
них (подробности вы можете найти в справочных материалах):

     - драйвер ANSI.SYS, предусматривающий улучшенное  управление
дисплеем без необходимости обращения к функциям BIOS;

     - системные  таймеры  поддерживают  таймер  астрономического
времени,  а  также генерацию звука с помощью встроенного динамика
РС и точный отсчет времени;

     - дополнительный арифметический сопроцессор 8087 значительно
ускоряет выполнение операций с плавающей точкой.



       Глава 5. Основные элементы программы на языке Ассемблера
-----------------------------------------------------------------

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

     В этой главе вы узнаете об основных компонентах программы на
Ассемблере.  Сначала мы расскажем о минимальных требованиях к ра-
ботающей программе на Ассемблере. Затем мы обсудим различные эле-
менты  строки,  и как их можно сочетать друг с другом. Попутно мы
расскажем  много полезного об инструкциях,  директивах и тех спо-
собах,  с  помощью которых программа на Ассемблере может получить
доступ к памяти. Вы увидите, как в Турбо Ассемблере  определяются
и используются сегменты, узнаете о выделении и  использовании пе-
ременных в памяти. Наконец, мы рассмотрим некоторые наиболее  об-
щеупотребительные инструкции.

     Объем охваченных  здесь  тем велик,  но когда вы покончите с
этой главой, вы узнаете достаточно, чтобы начать писать программы
на  Ассемблере.  Реализовать это знание можно с помощью программы
подсчета слов, приведенной в конце главы.

     Так как в данной главе только затрагиваются  многие  аспекты
программирования  на  Ассемблере,  то в Главу 6 "Более подробно о
программировании на Турбо Ассемблере" и Главу 9  "Развитое  прог-
раммирование  на Турбо Ассемблере" где эти темы получают дальней-
шее развитие.

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

     Теперь, когда вы лучше  понимаете,  что  представляет  собой
программа  на языке Ассемблера процессора 8086, вы готовы к тому,
чтобы начать писать на Ассемблере программы. Давайте  рассмотрим,
каковы минимальные требования к работающей программе на Ассембле-
ре. Даже простая программа на Ассемблере включает в себя  некото-
рое количество строк. Рассмотрим, например, следующую программу:






DOSSEG ; директива упорядочивания ; сегментов .MODEL SMALL ; модели кода и данных ; ближнего типа .STACK 200h ; стек объемом 512 байт .DATA ; начало сегмента данных DisplayString DB 13,10 ; пара символов "возврат ; каретки/перевод строки" ; для начала новой строки ThreeChars DB 3 DUP (?) ; память для трех символов, ; введенных с клавиатуры DB '$' ; хвостовой символ "$", ; указывающий DOS, где ; завершить вывод строки ; DisplayString при ; выполнении функции 9 .CODE ; начало сегмента кода Begin: mov ax,@Data mov ds,ax ; DS указывает на сегмент ; данных mov bx,OFFSET ThreeChars ; указывает на ; ячейку памяти, где ; содержится первый символ mov ah,1 ; функция DOS ввода с ; клавиатуры int 21h ; получить следующую ; нажатую клавишу dec al ; вычесть из символа 1 mov [bx],al ; сохранить измененный ; символ inc bx ; указать на ячейку памяти, ; где содержится следующий ; символ inc 21h ; получить следующую ; нажатую клавишу dec al ; вычесть из символа 1 mov [bx],al ; сохранить измененный ; символ inc bx ; ссылка на ячейку памяти ; со следующим символом int 21h ; получить следующую ; нажатую клавишу dec al ; вычесть из символа 1 mov [bx],al ; сохранить измененный ; символ mov dx,OFFSET DisplayString ; ссылка на ; строку измененных ; символов mov ah,9 ; функция DOS вывода строки int 21h ; вывести измененные символы mov ah,4ch ; функция DOS завершения int 21h ; программы END Begin ; директива, отмечающая ; конец исходного кода и ; указывающая, где начинать ; выполнение при запуске ; программы Данная программа содержит упрощенные директивы определения сегментов DOSSEG, .MODEL, .STACK, .DATA и .CODE, а также директи- ву END. В каждой программе на Ассемблере, чтобы обеспечить опре- деление сегментов и управление ими, необходимы директивы опреде- ления сегментов (упрощенные или стандартные), а завершать программу на Ассемблере всегда должна директива END. Директивы определения сегментов и директиву END, а также некоторые другие директивы мы опишем в данной главе. Директивы представляют собой только "рамки" программы на Ас- семблере. В самой программе необходимы также строки исходного кода, выполняющие какие-либо действия, например: mov [bx],al и inc dx Эти строки представляют собой мнемоники инструкций, соот- ветствующие набору инструкций процессора 8086, список которых приведен в предыдущей главе. Однако, перед тем, как вы сможете использовать инструкции или директивы, вы должны изучить формат строки кода Ассемблера, так что давайте рассмотрим его. Если вы захотите узнать, что же делает первая программа (приведенный в выше пример), введите ее, запустите, наберите IBM, после чего программа ответит вам: HAL Программа считывает три символа, вычитает из каждого символа значение 1 и выводит на экран результат. Зарезервированные слова ----------------------------------------------------------------- Зарезервированные или ключевые слова предназначены только для использования Турбо Ассемблером. Их нельзя использовать для определения присваиваний, меток или имен процедур. Ключевые слова следует рассматривать как элементы построения программы на Ас- семблере. Эти слова приведены в Таблице 5.1 (включая операции +, *, -, директивы .386, ASSUME, MASM, QUIRKS) и предопределенные идентификаторы ??time, ??version, @WordSize).


Страницы : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 [22] 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51


adfun.ru









Форум раскрутка сайта и интернет-реклама
реклама - рекламное агентство -
Интернет PR агентство чат и форум
волчат знакомства - сайт знакомств
бесплатные компьютерные игры
фото знакомства
новые стеклопакеты -
качественное остекление балконов
портал - пластиковые окна -
закажите окна пвх в Москве

частная стоматология в Москве:
надежная стоматологическая клиника
протезирование зубов и
отбеливание зубов в стоматологии
Музыка - скачать mp3 музыка
каталог партнерские программы
ручной бесплатный обмен ссылками цифровые камеры цифровые фотоаппараты -
цифровые видеокамеры

театры - заказ билетов в театр -
магазин - продажа компьютеров
в Москве форум Испания - жилье -
недвижимость в испании

турфирма - испания туры
Переводы - бюро переводов
Законы - закон о товарных знаках,
Грузовые перевозки. АсМАП. Дальнобой закон о рекламе
Интернет казино
реклама на форуме и контекстная реклама
на Яндексе Баннерная сеть и
интернет каталог сайтов Holiday.Ru
Форумы политика, лучшие анекдоты
знакомства.