Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.03.2012, 18:04   #11
X@OC
Форумчанин
 
Аватар для X@OC
 
Регистрация: 18.06.2010
Сообщений: 273
По умолчанию

это он INCLUDE 89S8252.mc
X@OC вне форума Ответить с цитированием
Старый 04.03.2012, 18:08   #12
X@OC
Форумчанин
 
Аватар для X@OC
 
Регистрация: 18.06.2010
Сообщений: 273
По умолчанию

Вот собрал все в кучу
Код:
INCLUDE 89S8252.mc

    Initialize:

    Main:

DELAY : MOV R1, #105       ;загрузка Х 
LOOPEX: MOV R2, #236      ;загрузка Y 
LOOPIN: DJNZ R2, LOOPIN   ;декркмент R2 и внутренний цикл,
                          ;если (R2) не равно нулю 
        DJNZ R1, LOOPEX   ;декремент R1 и внешний цикл,
                          ;если (R1) не равно нулю 
        MOV R3, #12        ;точная подстройка 
LOOPAD: DJNZ R3, LOOPAD   ;временной задержки 
        RET

PULS:                       ;выдача импульса в линию 3 порта 1 
ON:    ANL P1, #11110111B   ;включение исполнительного механизма
       CALL DELAY           ;временная задержка
OFF:   ORL P1, #00001000B   ;отключение исполнительного механизма

  Finalize:
        JMP finalize
и вылезла такая ошибка
Цитата:
Please use within jumplabel none of the following sings: '\/;<>'

Occured in row: END
X@OC вне форума Ответить с цитированием
Старый 04.03.2012, 19:02   #13
С.М.С
Участник клуба
 
Аватар для С.М.С
 
Регистрация: 29.12.2008
Сообщений: 1,598
По умолчанию

Попробуйте поставить процедуру задержки после Finalize, а то возвращяться некуда по команде ret.

Это задание или так для себя?
С.М.С вне форума Ответить с цитированием
Старый 04.03.2012, 19:08   #14
X@OC
Форумчанин
 
Аватар для X@OC
 
Регистрация: 18.06.2010
Сообщений: 273
По умолчанию

для себя

вообще программист Java, Pascal, C++
хочу разобраться в Asseblere чтобы делать Assebler вставки.

это одно из условий таблицы компетентности программиста

вот так
Код:
INCLUDE 89S8252.mc

    Initialize:

    Main:
указывает на эту строчку
DELAY : MOV R1, #105 ;загрузка Х
Код:
LOOPEX: MOV R2, #236      ;загрузка Y 
LOOPIN: DJNZ R2, LOOPIN   ;декркмент R2 и внутренний цикл,
                          ;если (R2) не равно нулю 
        DJNZ R1, LOOPEX   ;декремент R1 и внешний цикл,
                          ;если (R1) не равно нулю 
        MOV R3, #12        ;точная подстройка 
LOOPAD: DJNZ R3, LOOPAD   ;временной задержки 
        RET

PULS:                       ;выдача импульса в линию 3 порта 1 
ON:    ANL P1, #11110111B   ;включение исполнительного механизма
       CALL DELAY           ;временная задержка
OFF:   ORL P1, #00001000B   ;отключение исполнительного механизма

  Finalize:
       CALL DELAY
ошибка та же, по моему проблема не в RET

Последний раз редактировалось X@OC; 04.03.2012 в 19:11.
X@OC вне форума Ответить с цитированием
Старый 04.03.2012, 19:21   #15
С.М.С
Участник клуба
 
Аватар для С.М.С
 
Регистрация: 29.12.2008
Сообщений: 1,598
По умолчанию

Имел ввиду так:
Код:
INCLUDE 89S8252.mc

Initialize:

Main:

PULS:                       ;выдача импульса в линию 3 порта 1 
ON:    ANL P1, #11110111B   ;включение исполнительного механизма
       CALL DELAY           ;временная задержка
OFF:   ORL P1, #00001000B   ;отключение исполнительного механизма

Finalize:
JMP Finalize

DELAY:
 MOV R1, #105       ;загрузка Х 
LOOPEX: 
MOV R2, #236      ;загрузка Y 
LOOPIN: 
DJNZ R2, LOOPIN   ;декркмент R2 и внутренний цикл,
                          ;если (R2) не равно нулю 
DJNZ R1, LOOPEX   ;декремент R1 и внешний цикл,
                          ;если (R1) не равно нулю 
MOV R3, #12        ;точная подстройка 
LOOPAD: 
DJNZ R3, LOOPAD   ;временной задержки 
RET
Мне вам трудно советовать, потому как я не работал в этой среде и отладить соответственно не имею возможности.
С.М.С вне форума Ответить с цитированием
Старый 04.03.2012, 19:26   #16
X@OC
Форумчанин
 
Аватар для X@OC
 
Регистрация: 18.06.2010
Сообщений: 273
Радость

Спасибо вам огромно С.М.С
за вашу помощь
к сожалению больше чем один плюс поставить не могу )
X@OC вне форума Ответить с цитированием
Старый 04.03.2012, 19:39   #17
X@OC
Форумчанин
 
Аватар для X@OC
 
Регистрация: 18.06.2010
Сообщений: 273
По умолчанию

посмотрел на работу программы
и по результатам программа как вошла в DELAY и так из него и невыход
P1 не попадает на выключение совсем
как это можно исправить

подскажите пожалуйста
___________________________________ ______________
изменение сообщения
все разобрался

Последний раз редактировалось X@OC; 04.03.2012 в 19:44.
X@OC вне форума Ответить с цитированием
Старый 04.03.2012, 20:01   #18
С.М.С
Участник клуба
 
Аватар для С.М.С
 
Регистрация: 29.12.2008
Сообщений: 1,598
По умолчанию

возможно вы не дождались, в отладчике оно довольно долго продолжается, как вариант на время отладки уменьшить число заносимое в регистры
С.М.С вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Первое включение Mase4ka Помощь студентам 1 22.10.2011 21:24
Циклическое включение russian-stalker Общие вопросы C/C++ 2 04.01.2011 14:33
Включение оптимизации в Delphi Mixasik Свободное общение 7 30.05.2010 09:08
Нестандартное включение ПК Bat{CMD}_Men Операционные системы общие вопросы 1 24.08.2009 17:04
Реализация механизмов управления доступом к ресурсам DenisVR Безопасность, Шифрование 6 14.11.2007 11:33