Адресиране режими 1
включени СН; плюс 1 до съдържание СН
натиснете DS; DS се съхраняват в стека
xchg BX, BP, BX и BP споделяне на съдържание
Mov ES, AX, AX се изпраща към съдържание ES
Mov AH, 40h; номер 40h се зарежда в академия на науките
Mov AL "*"; ASCII код характер "*" е зареден в ПВК
INT 21h; прекъсне команда с аргумент 21ч
граница = 528; номер 528 получава граница наименование
Mov CX, граница; брой на определена граница, се зарежда в CX
МОН db "Урок 1"; низ от знаци,
meml ст 0; памет дума съдържа 0
mem2 db 230; 230 байта съдържа
; Command Сегмент
вкл meml; думи съдържание meml се увеличава с 1
Mov DX, meml; Съдържанието на думи с името на меню се зареждат в DX
Mov AL, mem2; Съдържанието на байта на име mem2 заредени в AL
Mov ES, AX; Изпращайте на ES
Mov байт PTR ES: 0 '. "; Ни изпратите символ на 1 фамилиарност екран
Mov байт PTR ES: 2 '. "; Ни изпратите символ на 2 познаване екран
Mov байт PTR ES: 0 '. "
Mov дума PTR ES: 0 "!
Mov AL "! MOV ES: 0, AL
Тук операнда източник е регистър ПВК, чийто размер (1 байт) е известно, и размера на приемника операнд не е необходимо да се определи. Разбира се, екипът
Аз ще трябва да изпратим един от 10 броя 6, което, разбира се, няма никакъв смисъл и не могат да бъдат удовлетворени. екипът
Mov байт PTR ES: [BX]. "; Символ на екрана
Mov байт PTR [BX]. "; Символ на екрана
Между другото, тази част е малко по-ефективно, в смисъл на предходната разпределението на паметта. Поради липса на код префикс подмяна сегмент последната инструкция, отнема 1 байт по-малко пространство.
Регистрира BX, SI и DI в настоящата заявка, перфектно еквивалент и еднакво добре може да се използва нито един от тях:
Mov байт PTR [DI]. ". "; Символ на екрана
Mov байт PTR ES: [BX]. ". "; Символ на екрана
Можете да използвате един
Mov DI, 80 * 24 * 2; офсет към най-долния ред на екрана
Mov байтови PTR ES: [DI], "D"; Символ на екрана
Mov байтови PTR ES: 2 [DI], "К", позицията на следващия запис символ
MOV байтови PTR ES: 4 [DI] ". "; Пишем характера на следващата позиция
натиснете DS; стойности Множеството товарене
натиснете ES; три регистри,
натиснете SI; предава подпрограма
обадете mysub; mysub извикване на подпрограма
Като се използва тези настройки
Mov AX, 2 [BP]; AX Прочети в последния параметър (SI)
Mov BX, 4 [BP] ВХ във предишния параметър (ES)
Mov CX, 6 [BP]; CX във първи параметър (DS)
Ris.2.15. Купчината след зареждане в него три параметъра и прехода към подпрограмата
Mov SI, 0; първоначалната стойност на елемент в масива индекс
Mov AX, 0; Първият брой заместител
Mov CX, 10000; редица стъпки в цикъла (винаги на CX)
запълване: Mov масив [SI] AX; Съхраняване на номера на елемент на масива
включени AX; Увеличаване на броя заместител
добави SI, 2, офсет в масива на следващата дума
линия за пълнене; Назад към марката за пълнене (CX пъти)
[VH] [SI] (подразбира DS: [BX] [SI])
[BX] [DI] (подразбира DS: [BX] [DI])
[BP] [SI] (подразбира SS: [BP] [SI])
[BP] [DI] (подразбира SS: [BP] [DI])
Mov SI, 0; първоначалната стойност на индекс
; Елемент в масива
Mov AX, 0; Първият брой заместител
Mov CX, 10000; редица стъпки от цикъла
попълнете: Mov [BX] [SI], AX, ни изпратете номера в масив
включени AX; Увеличаване на броя заместител
добави SI, 2, офсет в масива на следващата дума
линия за пълнене; На запълване марки (CX пъти)
Симс db "QWERTYUIOP<>"
Mov BX, 12; брой байтове на линия
Mov BX, на разстояние от стаята сим