Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: [ASM] Программа зацикливается, кто может помочь, посмотрите пожалуйста  (Прочитано 730 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Кирдина Ульяна
Новенький

ru
Offline Offline

« : 06-04-2016 19:30 » 

подскажите, что нужно поменять, что тут не правильно? очень нужно, помощи ждать не от кого. задание в приложении есть, все работает, компилирует, но выводит нули, вместо текста.  Здесь была моя ладья...

Код: (ASM)
ORG 0000H

CONST SYS 0F800H
CONST KBD 0C81BH
CONST PORTA 0FFE4H
CONST PORTB 0FFE5H
CONST PORTC 0FFE6H
CONST RCW 0FFE7H
CONST BUF 1100H
CONST SHIFT 0FFE1H

JMP START

:INIT
             MVI A, 89H
             STA RCW
             LDA PORTC
             ANI 0FEH
             STA PORTC

             MVI A, 1BH
             STA PORTB
             CALL SEND
             MVI A, 40H
STA PORTB
             CALL SEND
             RET

:SETUP
             MVI B, 1BH
             CALL SEND
             MVI B, 45H
             CALL SEND

             MVI B, 1BH
             CALL SEND
             MVI B, 6BH
             CALL SEND
             MVI B, 02H
             CALL SEND
             RET
:SEND
             LDA PORTB
             ANI 80H
             JNZ SEND

             MOV A, B
             STA PORTA

             LDA PORTC
             ORI 01H
             STA PORTC
             JMP M1

:M1
             LDA PORTB
             ANI 80H
             JNZ M1

             LDA PORTC
             ANI 0FEH
             STA PORTC
             RET
             JMP M2

:PRINT
             LXI H, BUF
:CYC
             LDA SHIFT
             ANI 02H
             RZ

             MOV A, M
             CPI 0FFH
             RZ

             CPI 0DH
             JNZ M2

             MVI B, 0AH
             CALL SEND
:M2
             MOV B, A
             CALL SEND
             INX H

             JMP CYC
             RET

:START
          CALL INIT

          CALL SETUP
:LOOP
          CALL KBD
          CPI 1BH
          JZ SYS

          CPI 20H
          JNZ LOOP

          CALL PRINT

          JMP LOOP
:END

подскажите, что нужно поменять, что тут не правильно? очень нужно, помощи ждать не от кого. задание в приложении есть,

Добавлено через 14 минут и 13 секунд:
это продолжение задания

* задание.png (116.75 Кб - загружено 59 раз.)
« Последнее редактирование: 06-04-2016 19:44 от Кирдина Ульяна » Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines