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




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

; ввода
;
; Входные данные: нет
;
; Выходные данные:
;     AL = символ, если он был доступен
;     флаг Z = 0 (NZ), если символ доступен,
;            = 1 (Z) при достижении конца строки
;
; Нарушаемые регистры: AH, BX, CX, DX
;
GetNextCharacter       PROC
                  mov  ah,3fh           ; функция DOS
                                        ; чтения из файла
                  mov  bx,0             ; стандартный
                                        ; описатель ввода
                  mov  cx,1             ; считать один символ
                  mov  dx,OFFSET TempChar ; поместить символ
                                        ; в TempChar
                  int  21h              ; получить следующий
                                        ; символ
                  jc   NoCharacterRead  ; если DOS сообщает
                                        ; об ошибке,
                                        ; интерпретировать ее,
                                        ; как конец файла
                  cmp  [TempChar],1ah   ; это Control-Z?
                                        ; (метка конца файла)
                  jne  NotControlZ      ; нет
NoCharacterRead:
                  sub  ax,ax            ; установить флаг Z,
                  and  ax,ax            ; что отражает, был
                                        ; ли считан символ (NZ)
                                        ; или мы достигли
                                        ; конца файла (Z).
                                        ; Обратите внимание,
                                        ; что функция DOS 3fh
                                        ; устанавливает регистр
                                        ; AX в значение числа
                                        ; считанных символов
                  mov  al,[TempChar]    ; возвратить считанный
                                        ; символ
                  ret                   ; выполнено
GetNextCharacter       ENDP
;
; Подпрограмма, сообщающая, является ли прочитанный символ
; разделителем
;
; Входные данные:
;     AL = проверяемому символу
;
; Выходные данные:
;     флаг Z = 0 (NZ), если символ не является разделителем,
;            = 1 (Z) если символ - разделитель
;
; Нарушаемые регистры: нет
;
IsCharacterWhitespace  PROC
                  cmp  al,09h           ; это символ табуляции?
                  jz   EndIsCharacterWhitespace ; если да, то
                                        ; это разделитель
                  cmp  al,' '           ; это пробел?
                  jz   EndIsCharacterWhitespace ; если да, то
                                        ; это разделитель
                  cmp  al,0dh           ; это возврат каретки?
                  jz   EndIsCharacterWhitespace ; если да, то
                                        ; это разделитель
                  cmp  al,0ah           ; это перевод строки?
                  cmp  al,' '           ; это пробел?
                                        ; если да, то это
                                        ; разделитель,
                                        ; возвратить Z, если
                                        ; нет, то это не
                                        ; разделитель, возвратить
                                        ; NZ (устанавливаться
                                        ; cmp)
EndIsCharacterWhiteSpace:
                  ret
IsCharacterWhiteSpace  ENDP
;
; Подпрограмма, преобразующая двоичное число в текстовую
; строку
;
; Входные данные:
;     AX = число, которое нужно преобразовать
;     DS:BX = указатель на конец строки, в которой
;     сохраняется текст
;
; Выходные данные: нет
;
; Нарушаемые регистры: AX, BX, CX, DX, SI
;
ConvertNumberToString  PROC
                  mov  si,10            ; используется в цикле
                                        ; ConvertLoop
                  sub  dx,dx            ; преобразовать AX в
                                        ; двойное слово в AD:DX
                  div  si               ; разделить число на 10





; остаток - в DX, это ; десятичное число из ; одной цифры; число/10 ; находится в AX add dl,'0' ; преобразовать остаток ; в текстовую строку mov [bx],dl ; поместить эту цифру в ; строку dec bx ; ссылка на следующую ; самую значащую цифру loop ConvertLoop ; обработать следующую ; цифру, если она есть ret ConvertNumberToString ENDP ; ; Подпрограмма, выводящая строку на экран дисплея ; ; Входные данные: ; DS:BX = указатель на выводимую строку ; ; Выходные данные: нет ; ; Нарушаемые регистры: нет ; PrintString PROC push ax ; сохранение регистров push dx ; в подпрограмме mov ah,9 ; функция DOS вывода ; строки mov dx,bx ; установить DS:DX на ; выводимую строку int 21h ; вызвать DOS для ; вывода строки pop dx ; восстановить измененные pop ax ; регистры ret ; возврат управления PrintString ENDP END ProgramStart Выполняемый файл WCOUNT.EXE можно запускать в ответ на подс- казку DOS, переназначив ввод из файла, в котором вы хотите подс- читать слова. Например, для подсчета числа слов в файле WCOUNT.ASM нужно в ответ на подсказку DOS ввести: wcount

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