Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые обзорные » Моделювання програми гіпотетичної машини за допомогою макрозасобів

Реферат Моделювання програми гіпотетичної машини за допомогою макрозасобів





ї символу $ bx, RdStr; в bx завантажуємо адресс строкіbyte ptr [bx +1]; враховуємо символ кінця рядка '$' cl, [bx +1]; заносимо в лічильник кількість сімволовch, ch ; рядки: mov al, [bx +1]; зсув символів вправо на одну позицію [bx], albx; перехід до наступній парі сімволовm1al, '$'; заносимо в кінець рядка символ '$' byte ptr [bx], al

; Переклад рядка шляхом виведення на екран послідовно 2-х символів

; 13 - переклад рядка і 10 повернення кареткіah, 2h; Функція DOS виводу сімволаdl, 13; в dl завантажується код символу

int 21hdl, 1021h

EndM

; **** Висновок рядка на екран ********************************* ********

WriteString macro WrStrah, 09h; Функція DOS виводу рядка

lea dx, WrStr; посилання на сообщеніеdx; пропускаємо довжину строкі21h; вивести повідомлення на екран

; Переклад рядка шляхом виведення на екран послідовно 2-х символів

; 13 - переклад рядка і 10 повернення кареткіah, 2h; Функція DOS виводу сімволаdl, 13; в dl завантажується код символу

int 21hdl, 1021h

EndM

; ****** Вставка в кінець слів значення їх довжин *************************

WriteLenWords macrom0, m1, m2, m3, m4, m5, mend

lea si, mystring; Завантажуємо в SI адреса рядка

inc sidi, sibx, bxbl, R0; R0-MAX довжина

add di, bx; di-cледует слово

inc di: xor cx, cx;

mov cl, R0; занесення до лічильник: cld;; завантаження поточного елемента строкіal, '$'; якщо кінець предложеніяmend; то виходal, ','; якщо знайшли кінець словаm2; то вичісляемbx, cx; кількість літер в словеm5; якщо 0 то шукаємо след.словоm3; інакше записуємо в кінець довжину слова: loop m1: dec si; кінець словаbyte ptr [si], '['; Вставляемbyte ptr [si +4], ']'; дужки іbyte ptr [si +5], ','; знак комою в строкуal, bl; AL-довжина словаbl, 0Ah; BL-число 10si, 3; Встаємо на останній символ числа дліниcx, 3; Кількість поділок - 3 тому 3 цифри: xor ah, ah; Очищаємо залишок від деленіяbl; Ділимо AL на 10 (AH-залишок, AL-число) ah, 30h; Додаємо до залишку код нуля'0 '

; щоб отримати ASCII код ціфриbyte ptr [si], ah; Вставляємо в рядок отриманий сімволsi; зсувається вліво на один сімволm4; Повторюємо поділ три рази: mov si, di; si-ставимо на наступне слово

xor ch, ch; bl, R0;

add di, bx; di-на наступне після si словоdim0; продовжуємо вставку довжин

mend:

EndM

; ***** Занесення в стек декількох регістрів ************************** m...


Назад | сторінка 12 з 13 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Створення базового класу &Рядок&, рядки ідентифікатора і десяткової рядка. ...
  • Реферат на тему: Проектування біжучого рядка на мікроконтролері з використанням програмного ...
  • Реферат на тему: Розробка програми перекладу введеного рядка тексту в послідовність кодів аб ...
  • Реферат на тему: Розробка програм по створенню бази даних приладів і додавання першого рядка ...
  • Реферат на тему: Виведення на екран поточного каталогу в графічному режимі (з скролінгом)