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




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

        .CODE
        mov    ax,@Data
        mov    dx,ax             ; установить регистр DS таким
                                 ; образом, чтобы он указывал
        mov    ah,40h            ; функция DOS вывода строки
                                 ; на устройство
        mov    bx,4              ; описатель принтера
        mov    cx,Message_Length ; число печатаемых символов
        mov    dx,OFFSET Message ; ссылка на "Привет!"
        int    21h               ; вывести "Привет!" принтер
        mov    ah,4ch            ; функция DOS завершения
                                 ; программы
        int    21h               ; завершить программу
        END

     В данной версии программы функция DOS вывода строки на экран
заменена на функцию DOS, которая передает информацию на выбранное
устройство или в файл, в данном случае - на  принтер.  Введите  и
запустите  программу.  Посмотрите, как она напечатает на принтере
слово "Привет!". (Перед запуском программы не забудьте ее  сохра-
нить при завершении работы в редакторе.  При этом программа будет
сохранена в файле HELLO.ASM,  а предыдущая версия программы будет
потеряна.)

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

        mov   bx,4     ; описатель принтера

на строку:

        mov   bx,1     ; описатель стандартного вывода

     Сделайте такое изменение, а затем снова выполните перекомпи-
ляцию  и  перекомпоновку  программы  перед  ее запуском. Запустив
программу, вы увидите, что сообщение появится на экране,  а  пос-
ледним символом будет графический символ перевода формата (кружок
с крестиком внизу). Этот символ программа  передает  на  принтер,
чтобы вынудить его после вывода сообщения выполнить перевод стра-
ницы. Поскольку на экране страниц нет, он ничего не знает о пере-
воде  формата и просто выводит на экран символ из набора символов
компьютера РС.

               Ваша вторая программа на Турбо Ассемблере
-----------------------------------------------------------------

     Теперь вы готовы к тому, чтобы ввести и запустить программу,
которая действительно что-то делает. Вернитесь в текстовый редак-
тор и введите следующую программу REVERSE.ASM:

       DOSSEG
       .MODEL SMALL
       .STACK 100h
       .DATA
    MAXIMUM_STRING_LENGTH  EQU  1000
    StringToReverse        DB   MAXIMUM_STRING_LENGTH  DUP (?)
    ReverseString          DB   MAXIMUM_STRING_LENGTH  DUP (?)
       .CODE
       mov    ax,@Data
       mov    dx,ax             ; установить регистр DS таким
                                ; образом, чтобы он указывал
       mov    ah,3fh            ; функция DOS чтения ввода
       mov    bx,0              ; описатель стандартного ввода
       mov    cx,MAXIMUM_STRING_LENGTH ; считать до максималь-
                                ; ного числа символов
       mov    dx,OFFSET StringToReverse ; сохранить строку
       int    21h               ; получить строку
       and    ax,ax             ; были считаны символы?
       jz     Done              ; нет, конец
       mov    cx,ax             ; поместить длину строки в
                                ; регистр СХ, который можно
                                ; использовать, как счетчик
       push   cx                ; сохранить в стеке длину
                                ; строки
       mov    bx,OFFSET StringToReverse
       mov    si,OFFSET ReverseString
       add    si,cx
       dec    si                ; указывает на конец буфера
                                ; строки
    ReverseLoop:
       mov    al,[bx]           ; получить следующий символ
       mov    [si],al           ; сохранить символы в
                                ; обратном порядке
       inc    bx                ; указатель на следующий
                                ; символ
       dec    si                ; указатель на предыдущую
                                ; ячейку buffer
       loop   ReverseLoop       ; переместить следующий
                                ; символ, если он имеется
       pop    cx                ; извлечь длину строки
       mov    ax,40h            ; функция записи DOS
       mov    bx,1              ; описатель стандартного
                                ; вывода
       mov    dx,OFFSET ReverceString ; напечатать строку
    Done:
       mov    ah,4ch            ; функция DOS завершения





; программы int 21h ; завершить программу END Скоро вы увидите, что сможет делать эта программа. Для нача- ла не забудьте ее сохранить (под именем REVERSE.ASM). Запуск программы REVERSE.ASM ----------------------------------------------------------------- Для запуска программы REVERSE.ASM вы должны сначала ассем- блировать ее: TASM reverse а затем ввести: TLINK reverse для создания выполняемого файла. Запустите программу, введя в от- вет на подсказку DOS слово reverse. В случае вывода при ассембли- ровании сообщений об ошибках, внимательно проверьте исходный код, сравните его с приведенным текстом, а затем попытайтесь повторить процесс. После запуска программы на экране останется мерцающий кур- сор. Очевидно, программа ожидает, что вы что-нибудь введете. Поп- робуйте ввести: ABCDEFG а затем нажмите клавишу ENTER. Программа выведет на экран: GFEDCBA и завершит работу. Снова введите reverse в командной строке. На этот раз введите: 0123456789 и нажмите клавишу ENTER. Программа выведет на экран: 9876543210 Теперь ясно, что делает программа REVERSE.ASM: она изменяет порядок символов во введенной строке на обратный. Быстрая работа со строками и символами - эта одна из областей, где язык Ассем- блера превосходно демонстрирует свои качества. Вы увидите это в следующих нескольких главах. Вас можно поздравить! Вы только что ввели, ассемблировали и скомпоновали несколько программ на Ассемблере и, таким образом, ознакомились в действии с основами программирования на Ассембле- ре: вводом, обработкой данных и выводом. Если вы не хотите создавать объектный файл, но хотите полу- чить файл листинга, или если вы хотите получить файл перекрестных ссылок, но не хотите создавать файл листинга или объектный файл, задайте в качестве имени файла пустое (нулевое) устройство (NULL). Например, команда: TASM FILE1,,NUL, ассемблирует файл FILE1.ASM в объектный файл FILE1.OBJ, не созда- вая файла листинга, и создает файл перекрестных ссылок FILE1.XRF. Теперь вы готовы к тому, чтобы изучить основные элементы программирования на языке Ассемблер, о которых рассказывается в Главе 5 "Элементы программы на Ассемблере". Глава 3. Работа с командной строкой Турбо Ассемблера ----------------------------------------------------------------- Данная глава посвящена ознакомлению вас с необязательными параметрами командной строки Турбо Ассемблера. Мы опишем каждый параметр командной строки, которые вы можете использовать для того, чтобы изменить поведение Ассемблера, и покажем, как и где используются командные файлы. Наконец, мы опишем также файл кон- фигурации. Запуск Турбо Ассемблера из DOS ----------------------------------------------------------------- В Турбо Ассемблере имеется очень мощный и гибкий синтаксис командной строки. Если вы запустите Турбо Ассемблер, не задав ни- каких аргументов, например: TASM то на экран выведется справочная информация, (на английском язы- ке) описывающая множество параметров командной строки и синтаксис для спецификации ассемблируемых файлов. На Рис. 3.1 показано, как она выглядит. ----------------------------------------------------------------- Turbo Assembler Version 2.0 Copyright (C) 1990 by Borland International, Inc Usage: TASM [параметры] исх_файл [,объект_файл] [,листинг] [,пер_ссылки]


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