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




adfun.ru
Rambler's Top100 Rambler's Top100
    НА ГЛАВНУЮ
    РЕФЕРАТЫ
    ТОСТЫ
    ТЕСТЫ
    АВТО
    ДЛЯ СТУДЕНТА
    КНИГИ
    КОНТАКТ
 
Пpогpаммно-технические сpедства пеpсональных ЭВМ семейства IBM PC
Автор ""
Размер 294419 Байт
Страница 18 из 36
СКАЧАТЬ КНИГУ ЦЕЛИКОМ

      Графический  режим 320  х 200  предоставляет пользователю 8
 страниц размером  по 8К. Смещение  от начала страницы  до байта,
 содержащего пиксель с координатами (X,Y), равен 40*Y + int(X/8),
 а номер соответствующего  бита в этом байте  равен 7 - (X  % 8).
 Здесь  X  -  горизонтальная  позиция  точки  (0  -  639), Y - ее
 вертикальная позиция (0 - 199).

      В  графических режимах  640 х  350 имеются  две страницы  с
 адресами A0000h и A8000h  соответственно. В остальном этот режим
 аналогичен предыдущим.

      В  качестве  примера  приведем  три  подпрограммы  работы с
 дисплеем EGA в режиме 640 х  200. Если Вы хотите использовать их
 в других   режимах,  достаточно   поменять  значение   константы
 PageSize на соответствующее значение.

 


                            - 67 -

 PageSize equ   4000h     ; размер страницы для режима 640 х 200

 ;ЙННННННННННННННННННННННННННННННННННННННННННН»
 ;є Подпрограмма очистки экрана.              є
 ;є Вход: CX = номер очищаемой страницы (0-3) є
 ;ИНННННННННННННННННННННННННННННННННННННННННННј

 EGA_Cls   proc near
      push ax
      push bx
      push cx
      push dx
      push es
      push di
      xor  ax,ax     ; вычисляем смещение до страницы
      mov  bx,PageSize
      jcxz Page_0
 High_Page:
      add  ax,bx
      loop High_Page
 Page_0:
      mov  di,ax     ; DI = адрес страницы в видеопамяти
      mov  ax,0A000h
      mov  es,ax     ; ES:DI = полный адрес страницы
      mov  ax,0FF08h
      mov  dx,3CEh   ; графический контроллер
      out  dx,ax     ; установить все битовые маски
      mov  ax,0FF02h
      mov  dx,3C4h   ; блок синхронизации
      out  dx,ax     ; разрешить запись во все плоскости
      mov  ax,3
      mov  dx,3CEh   ; графический контроллер
      out  dx,ax     ; задать нормальный режим работы
      mov  cx,PageSize
      xor  al,al
      rep  stosb     ; обнулить страницу
      pop  di
      pop  es
      pop  dx
      pop  cx
      pop  bx
      pop  ax
      ret
 EGA_Cls   endp

 ;ЙННННННННННННННННННННННННННННННННННННННННННН»
 ;є Подпрограмма вывода пикселя на экран.     є
 ;є Вход: AX = цвет пикселя                   є
 ;є   BX = номер страницы                     є
 ;є   CX = номер столбца (X)                  є
 ;є   DX = номер строки  (Y)                  є
 ;ИНННННННННННННННННННННННННННННННННННННННННННј

 Put_Pixel proc near
      push ax
 


                            - 68 -

      push bx
      push cx
      push dx
      push es

      push ax
      push cx
      push dx
      mov  ax,dx
      mov  cx,80
      mul  cx    ; AX = 80 * Y
      pop  dx
      pop  cx
      push cx
      shr  cx,1
      shr  cx,1





shr cx,1 ; CX = X / 8 add ax,cx ; AX = 80 * Y + X / 8 mov cx,bx ; номер страницы mov bx,PageSize jcxz Page_Done Next_Page: add ax,bx ; учтем смещение до страницы loop Next_Page Page_Done: pop cx mov bx,ax ; BX = адрес байта, содержащего пиксель mov ax,0A000h mov es,ax ; ES:BX = полный адрес байта and cl,7 ; CL = X % 7 mov ah,80h shr ah,cl ; AH = позиция пикселя в байте mov dx,3CEh mov al,8 out dx,ax ; разрешить запись только в этот бит pop ax mov ch,al ; цвет пикселя mov dx,3C4h mov ax,0FF02h out dx,ax ; разрешить запись во все плоскости mov al,es:[bx] ; читаем байт xor al,al mov es:[bx],al ; обнуляем пиксель mov al,2 mov ah,ch ; цвет and ah,0Fh ; приведем к диапазону 0-15 out dx,ax ; разрешить запись в соотв. плоскости mov al,es:[bx] ; читаем байт mov al,0FFh mov es:[bx],al ; устанавливаем пиксель mov ax,0FF02h out dx,ax ; разрешить запись во все плоскости mov ax,3 mov dx,3CEh ; графический контроллер out dx,ax ; задать нормальный режим работы - 69 - mov ax,0FF08h out dx,ax ; включить все биты pop es pop dx pop cx pop bx pop ax ret Put_Pixel endp ;ЙННННННННННННННННННННННННННННННННННННННННННН» ;є Подпрограмма чтения цвета пикселя. є ;є Вход: CX = номер столбца (X) є ;є DX = номер строки (Y) є ;є Выход:AX = цвет пикселя є ;ИНННННННННННННННННННННННННННННННННННННННННННј Get_Pixel proc near push ax push bx push cx push dx push es push dx mov ax,205h mov dx,3CEh out dx,ax ; режимы: записи=01, чтения=0 pop dx push cx push dx mov ax,dx mov cx,80 mul cx ; AX = 80 * Y pop dx pop cx push cx shr cx,1 shr cx,1 shr cx,1 ; CX = X / 8 add ax,cx ; AX = 80 * Y + X / 8 mov cx,bx ; номер страницы mov bx,PageSize jcxz My_Page Higher_Page: add ax,bx ; учтем смещение до страницы loop Higher_Page My_Page: mov di,ax ; DI = адрес байта, содержащего пиксель mov ax,0A000h mov es,ax ; ES:DI = полный адрес байта pop cx and cl,7 ; CL = X % 7 mov ch,80h shr ch,cl ; CH = позиция пикселя в байте - 70 -


Страницы : 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


adfun.ru









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

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

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

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