Assembler для начинающих


Биты, байты и слова - часть 2


    определения областей памяти.  В предыдущих примерах мы размещали в
    памяти определенные значения.  Это может быть поисковая таблица или
    информация для перекодировки чисел.  Мы составим несколько
    примеров, в которых используется определенная подобным образом
    информация.  Кроме того встречаются ситуации, когда программе
    требуется место в памяти для сохранения данных в процессе
    исполнения.  Во время ассемблирования программы содержимое этого
    участка памяти неизвестно:      собственно, это содержимое будет
    переменным во время исполнения программы.  Инструкция
 
      DB   ?
 
    сообщает ассемблеру о необходимости выделить один байт памяти, не
    изменяя его содержимое.  В Этом байте может оказаться любое
    случайное число, которое будет там оставаться пока какая-либо
    команда не поместит в него определенное значение.
 
      Нам может потребоваться выделить и большое количество байтов,
    например, чтобы оставить область памяти для массива.  Мы можем это
    сделать так:
 
      DB   25 DUP(?)
 
    Этой инструкцией выделяется 25 байт памяти.  Ключевое слово DUP в
    этой псевдокоманде означает повторить (duplicate).      Число 25
    указывает, сколько раз ассемблер повторит определение байта в
    памяти.  Значение или значения в скобках ассемблер использует для
    инициализации этой области памяти.    В данном случае это значение
    неизвестно.  Для инициализации области с одним и тем же значением
    выражение, например,
 
      DB 17 DUP(31)
 
    создает 17 байт со значением 31 каждый.  Наконец,
 
      DB 30 DUP(1,2,3,4,5)
 
    выделяет 30 байт со значениями от 1 до 5 в первых пяти байтах. Сле-
    дующие пять байт тоже имеют значения от 1 до 5 и т.д.  Ассемблер
    повторяет значения в скобках пока не будут заполнены все 30 байт.
 
      Иногда нам хочется обратиться к набору бит меньшему чем байт.
    Принят размер 4 бит.  В 4 битах мы можем представить все 10
    десятичных цифр.  Для значений такого размера мы будем



- Начало -  - Назад -  - Вперед -



Книжный магазин