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




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

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


Запуск вашей первой программы
-----------------------------------------------------------------

     Теперь программу можно запустить на выполнение. Для этого  в
ответ на подсказку операционной системы DOS введите hello и  наж-
мите ENTER. На экран выведется сообщение:

        Привет!

Пока это все. Вы только что создали и выполнили свою первую прог-
рамму на Ассемблере!.


                            Что происходит?
-----------------------------------------------------------------

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

     Когда вы первый раз вводите исходный код программы на ассем-
блере,  ее  текст сохраняется текстовым редактором в памяти. Если
питание компьютера в этот момент по какой-то причине будет выклю-
чено,  исходный код будет потерян, поэтому мы рекомендуем вам по-
чаще сохранять исходный код, чтобы избежать такой трагедии. После
того,  как  вы  сохраните исходный код на диске, постоянная копия
текста будет записана в файл HELLO.ASM, который сохранится и пос-
ле выключения или сбоя питания (однако этот файл может быть поте-
рян в результате порчи диска, поэтому рекомендуется регулярно де-
лать  резервные  копии  файлов). Файл HELLO.ASM - это стандартный
текcтовый файл в коде ASCII. Вы можете вывести его на экран, вве-
дя в ответ на подсказку DOS команду:

        type hello.asm

Его можно также отредактировать с помощью текстового редактора.

     Когда вы ассемблируете файл HELLO.ASM, Турбо Ассемблер прев-
ращает  текст  инструкций в этом файле в их двоичный эквивалент в
объектном файле HELLO.OBJ. Этот файл является промежуточным  фай-
лом (промежуточным звеном в процессе перехода от текстового к вы-
полняемому файлу). Файл HELLO.OBJ содержит всю информацию,  необ-
ходимую для создания выполняемого кода из инструкций, содержащих-
ся в файле HELLO.ASM, но она записана в виде,  который  позволяет
комбинировать ее  с другими объектными файлами для создания одной
программы. В Главе 5 ("Более подробно о программировании на Турбо
Ассемблере")  вы увидите,  насколько полезным это может оказаться
при разработке больших программ.

     При компоновке файла HELLO.OBJ утилита TLINK преобразует его
в выполняемый файл HELLO.EXE,  который вы запускаете, введя hello
в ответ на подсказку DOS.

     Теперь введите команду:

        dir hello.*

При этом будет выведен список файлов HELLO на  диске.  Это  будут
файлы HELLO.ASM, HELLO.OBJ, HELLO.EXE и HELLO.MAP.

        Модификация вашей первой программы на Турбо Ассемблере
-----------------------------------------------------------------

     Теперь снова войдем в редактор и модифицируем программу  та-
ким  образом,  чтобы  она  могла  воспринимать какие-то данные из
внешней среды (этой "внешней средой" будете вы, а вводимые данные
будут набираться на клавиатуре). Измените программу следующим об-
разом:

        DOSSEG
        .MODEL SMALL
        .STACK 100h
        .DATA
     TimePrompt DB 'Это время после полудня? (ДА/НЕТ) - [Y/N]$'
     GoodMorningMessage LABEL BYTE
                DB 13,10,'Доброе утро!',13,10,'$'
     GoodAfternoonMessage LABEL BYTE
                DB 13,10,'Здравствуйте!',13.10,'$'
        .CODE
        mov    ax,@Data
        mov    dx,ax             ; установить регистр DS таким
                                 ; образом, чтобы он указывал
                                 ; на сегмент данных
        mov    dx,OFFSET TimePrompt ; ссылка на сообщение-запрос
        mov    ah,9              ; функция DOS вывода строки
        int    21h               ; получить ответ из одного
                                 ; символа
        cmp    al,'Y'            ; указано время после полудня
                                 ; (прописная буква Y)
        jz     IsAfternoon       ; да, время указано после
                                 ; полудня
        cmp    al,'y'            ; указано время после полудня
                                 ; (строчная буква y)





jnz IsMorning ; нет, время указано до ; полудня IsAfternoon: mov dx,OFFSET GoodAfternoonMessage ; указывает на ; приветствие "Здравствуйте" jmp DisplayGreeting IsMorning: mov dx,OFFSET GoodMorningMessage ; указывает на ; приветствие "Доброе утро" DisplayGreeting: mov ah,9 ; функция DOS вывода сообщения int 21h ; вывести соответствующее ; сообщение mov ah,4ch ; функция DOS завершения ; программы int 21h ; завершить программу END Таким образом вы добавили в программу два очень важных новых средства: возможность ввода и принятие решений. Эта программа запрашивает у вас, является ли вводимое время временем после по- лудня, воспринимая ответ (один символ) с клавиатуры. Если таким ответом будет буква Y в верхнем или нижнем регистре (что означает ответ ДА), то программа выводит сообщение "Здравствуйте!", в про- тивном случае выводится сообщение "Доброе утро!". В данной прог- рамме имеются все основные элементы полезной программы: ввод из информации внешней среды, обработка данных и принятие решения. Сохраните эту модифицированную программу на диске. (При этом исходная версия файла HELLO.ASM заменится модифицированным кодом, поэтому старая версия будет потеряна.) После этого заново ассем- блируйте и скомпонуйте программу, как в предыдущем примере. За- пустите ее снова, введя hello в ответ на подсказку DOS. Выведется сообщение: Это время после полудня? (ДА/НЕТ) - [Y/N] Курсор будет мерцать у последнего символа в ожидании ввода ответа. Нажмите Y. Программа ответит: Здравствуйте! Таким образом HELLO.ASM стала теперь интерактивной програм- мой с принятием решений. В ходе ассемблирования вы, конечно, получите различные сооб- щения об ошибках из-за неправильного набора программы и ошибках в синтаксисе. Турбо Ассемблер перехватывает такие ошибки, сообщая о них. Выводимые сообщения об ошибках разбиваются на две категории: предупреждения и ошибки. Если Турбо Ассемблер обнаруживает что-то подозрительное, но необязательно неверное, он выводит предупреж- дающее сообщение. Иногда предупреждающие сообщения можно игнори- ровать, но всегда лучше их проверить и убедиться в том, что вы понимаете суть проблемы. При обнаружении чего-либо явно непра- вильного в вашей программе, что делает невозможным завершение ас- семблирования и формирование объектного файла, Турбо Ассемблер выводит сообщение об ошибке. Другими словами, предупреждающие сообщения не свидетельству- ют о критических ошибках, в то время как ошибки, о которых гово- риться в сообщениях об ошибках, должны быть исправлены перед за- пуском программы. В Приложении E "Справочного руководства" содер- жится полный перечень сообщений об ошибках и предупреждающих со- общений. Как и любой язык программирования, Турбо Ассемблер не может распознавать ошибки в логике программы. Турбо Ассемблер только сообщает вам, может ли ваш ассемблируемый код быть выполнен в том виде, как он введен, но он не может сделать вывод о том, будет ли программа работать так, как вы этого хотите. Об этом можете су- дить только вы сами. Не беспокойтесь, если вы сейчас не совсем улавливаете смысл приведенной в примере программы на Ассемблере. Даже программис- там, имеющим опыт работы на других языках, требуется некоторое время, чтобы освоиться с языком Ассемблера процессора 8086. Сей- час важно, чтобы вы просто получили представление о том, как выг- лядит программа на Ассемблере. Далее в этой главе и в главе "Ос- новные элементы программы на языке Ассемблера" мы опишем каждый элемент представленной программы. Чтобы получить распечатку программы (вывести ее на устройс- тво печати), обратитесь к руководству по редактору текстов. Ис- ходные файлы Турбо Ассемблера представляют собой обычные тексто- вые файлы в коде ASCII (американский стандартный код обмена информацией), поэтому вы можете также напечатать исходный текст программы на Ассемблере (на устройстве печати) с помощью команды PRINT, введя ее в ответ на подсказку операционной системы DOS. Вывод информации на устройство печати ----------------------------------------------------------------- Устройство печати (принтер) - это очень полезное устройство. Вам может не только потребоваться распечатать текст программы, но и передать на принтер выводимую информацию. Следующая версия программы выводит информацию вместо экрана на принтер: DOSSEG .MODEL SMALL .STACK 100h .DATA Message DB 'Привет!',13,10,'$' Message_Length EQO $ - Message


Страницы : 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
Форумы политика, лучшие анекдоты
знакомства.