Первый сборник главы 4 до 6 баллов Язык

1. Конечные понятий , связанные с
концом раздела , чтобы информировать компилятор концов имени сегмента , когда директива компиляции компилятора выполняется
для информирования конечной программы компилятора конечного времени компилятора директивы, выполняемый компилятор
мов ах возвращает программу, 4c00h INT 21h инструкции по сборке при выполнении, выполненных по CPU
программы 2. был найден в компиляции ошибок синтаксиса время, ошибки во время выполнения найдены является логичным, легко найти синтаксические ошибки и логические ошибки не так легко найти
3. в DOS, исполняемый файл чтобы запустить программу p1, p2 исполняемая программа должна иметь ход, p1 будет загружен в память из исполняемого файла, управления центрального процессора к нему, p1 будет работать, и когда p1 закончит работу, вы должны управление обратно в центральном процессоре , чтобы включить его , чтобы запустить программу p2.
4. Программирование (Edit) -> 1.asm-> Compiler (MASM) -> 1.obj-> соединение (ссылка) -> 1.exe-> Load (Command) -> память программы -> Run (процессор ) -> возврат (Command)
.. 5 ((DS) 16 * + BX) является правильная формулировка, ((DS): 1000h) не правильная формулировка
6. ассемблере, данные не начинающиеся с буквы, так и в предшествовал 0
7.g 0012 будет отладка из текущего CS: IP в точку выполнение команды до (IP) = 0012H до
8.mov Al, DS: [0]
MOV Al, [0] = МЫ Al, 0
передние [0] должны предшествовать адрес сегмента регистре
9. Если необходима запись данных в области памяти, то операционная система использовать пространство , назначенное к нам, и не должно быть записаны непосредственно внутрь с адресом любого заданного пространства памяти,
Поскольку работает ДОС в режиме реального времени центрального процессора, не может позволить себе аппаратную системе , чтобы провести всестороннее, строгое управление, но операционная система Windows2000 их запуск в режиме защиты процессора, не обращая внимания на операционную систему на языке ассемблера для управления реального оборудования , это просто невозможно. Под обычным образом DOS и других законных программ , которые не используются 0: 200 ~ 0: 2ff 256 байт пространства
10. Как FFFF: 0 ~ FFFF: б из 8-битовых данных, 16-битный регистр для накопления дх в?
текущий метод заключается в использовании 16-битного регистра сделать посредничество, назначить блок памяти 8-битные данные в виде 16-битового регистра ах, данные затем применяются к ах дх, так что двух операндов результаты не соответствуют типу и супер-сектор.
6.1 контрольной точки
памяти следующая программа реализована последовательно с 0: 0 до 0: 15 Содержание блока перезаписи данных программы, программа завершается

assume   cs:codesg
codesg   segment

   dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
   dw 0,0,0,0,0,0,0,0,0,0

   start: mov ax,cs
          mov ss,ax;将cs中的内容调入ss寄存器中,
          mov sp,26;指令总长度为26B,要求对于一般指令的长度较为了解
          mov ax,0
          mov ds,ax
          mov bx,0
          mov cx,8
        s:push [bx];将ds:[bx]中的内容压入栈空间(dw 0,0,0)的位置
          pop cs:[bx];弹栈重新放入程序的相应位置
          ;ds:0000~ds:000f中原先存储的为0123h,0456h到0987h
          ;现在要用内存0:0~0:15中的其他值改写0123h,0456h到0987h这一段的数据
          add bx,2
          loop s

          mov ax,4c00h
          int 21h

codesg  ends

end start
Опубликовано 17 оригинальных статей · вона похвала 7 · просмотров 2990

рекомендация

отblog.csdn.net/znevegiveup1/article/details/103780809