Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.90/21: Рейтинг темы: голосов - 21, средняя оценка - 4.90
0 / 0 / 0
Регистрация: 17.05.2019
Сообщений: 8

МК-51. Составить на ассемблере МК51 и отладить программу

26.11.2019, 03:29. Показов 4392. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
СОСТАВИТЬ НА АССЕМБЛЕРЕ МК-51 И ОТЛАДИТЬ ПРОГРАММУ, КОТОРАЯ ПО ОПРОСУ СОДЕРЖИМОГО ЯЧЕЙКИ С АДРЕСОМ 0006H ВНЕШНЕЙ ПАМЯТИ ПРОГРАММ ВЫПОЛНЯЕТ СЛЕДУЮЩИЕ ДЕЙСТВИЯ:

- ЕСЛИ В ПЕРВОМ РАЗРЯДЕ СОДЕРЖИМОГО ДАННОЙ ЯЧЕЙКИ 1, ТО ЭТО СОДЕРЖИМОЕ ВЫДАЕТСЯ В ПОРТ Р0, ИНАЧЕ СДВИГАЕТСЯ НА ТРИ РАЗРЯДА И ЗАПИСЫВАЕТСЯ В РЕГИСТР R3 БАНКА 0.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.11.2019, 03:29
Ответы с готовыми решениями:

МК-51. Составить на ассемблере МК51 и отладить программу
СОСТАВИТЬ НА АССЕМБЛЕРЕ МК-51 И ОТЛАДИТЬ ПРОГРАММУ, КОТОРАЯ ПО ОПРОСУ СОДЕРЖИМОГО ЯЧЕЙКИ С АДРЕСОМ 09H ВНУТРЕННЕЙ ПАМЯТИ ДАННЫХ ВЫПОЛНЯЕТ...

МК-51. Составить на ассемблере МК51 и отладить программу - Микроконтроллеры
Помогите решить задачу: Составить на ассемблере МК51 и отладить программу, которая по опросу содержимого ячейки с адресом 0004Н внешней...

Составить на ассемблере МК-51 и отладить программу
Составить на ассемблере МК-51 и отладить программу сравнения содержимого ячейки внешней памяти данных с адресом 0503h и регистра R2 банка...

15
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
26.11.2019, 05:33
Revanhol, не надо кричать
0
1184 / 670 / 113
Регистрация: 15.05.2012
Сообщений: 4,082
26.11.2019, 09:56
Цитата Сообщение от Revanhol Посмотреть сообщение
СДВИГАЕТСЯ НА ТРИ РАЗРЯДА
В какую сторону?
0
0 / 0 / 0
Регистрация: 17.05.2019
Сообщений: 8
26.11.2019, 12:46  [ТС]
В правую
0
0 / 0 / 0
Регистрация: 17.05.2019
Сообщений: 8
28.11.2019, 02:34  [ТС]
Сдвигать как я понял надо командой RR. Но как проверять именно первый разряд?
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,612
28.11.2019, 02:39
Цитата Сообщение от Revanhol Посмотреть сообщение
Но как проверять именно первый разряд?
Assembler
1
JB ACC.0
или
Assembler
1
JB ACC.1
Х.З. что в вашем учебном задании подразумевается под первым разрядом.
1
0 / 0 / 0
Регистрация: 17.05.2019
Сообщений: 8
03.12.2019, 00:18  [ТС]
Что-то я совсем дуб-дубом, никак не получается решить эту задачу. Помогите пожалуйста составить программу
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,612
03.12.2019, 01:54
Цитата Сообщение от Revanhol Посмотреть сообщение
Что-то я совсем дуб-дубом, никак не получается решить эту задачу. Помогите пожалуйста составить программу
Ну хоть что-то вы пробовали написать? Если да, то покажите. Если нет, желание помочь уменьшается на два порядка.
0
0 / 0 / 0
Регистрация: 17.05.2019
Сообщений: 8
03.12.2019, 02:02  [ТС]
Ну мой алгоритм был таков: Я помещал значение в ячейку 06H, после чего переносил значение в аккумулятор. Происходил перевод в двоичное число и я использовал команду JB (в правильности использования ее я не уверен, ибо сперва пытался использовать JB ACC.0,P0, после чего выводилась команда JB ACC.0,80H, так что переносил я в R1, после чего в порт) следом три раза сдвигал значение аккумулятора вправо при помощи команды RR A, а затем вывод в R3. Но ничего не работает, что впрочем и не удивительно( (читал что эта команда переносит в метку, но до сего момента на занятиях с метками я не сталкивался)
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,612
03.12.2019, 02:18
Цитата Сообщение от Revanhol Посмотреть сообщение
Ну мой алгоритм был таков:
Код можете показать? Ибо ваше словесное описание не даёт возможности узнать в чём вы ошиблись.
0
0 / 0 / 0
Регистрация: 17.05.2019
Сообщений: 8
03.12.2019, 21:05  [ТС]
Вот
Миниатюры
МК-51. Составить на ассемблере МК51 и отладить программу  
0
Эксперт CЭксперт С++
 Аватар для liv
5120 / 4574 / 855
Регистрация: 07.10.2015
Сообщений: 9,462
03.12.2019, 21:16
Revanhol, что вот? Текстом, а не картинкой...
0
0 / 0 / 0
Регистрация: 17.05.2019
Сообщений: 8
03.12.2019, 21:52  [ТС]
Assembler
1
2
3
4
5
6
7
MOV R6,#FFH
MOV A,R6
JB ACC.0,P0
RR A
RR A
RR A
MOV R3,A
Добавлено через 26 минут
Немного поразмыслив, решил сделать иначе. Прогоном условий получается вроде верно, но если нет, то поправьте пожалуйста
Assembler
1
2
3
4
5
6
7
8
M1: MOV P0,A
MOV R6,#FAH
MOV A,R6
JB ACC.1,M1
RR A
RR A
RR A
MOV R3,A
Но скорее всего если и верно, я очень сильно накосячил со вводом из ячейки впд 0006h и выводом в регистр R3 банка 0 (что за банки вообще?)
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,612
03.12.2019, 22:00
Лучший ответ Сообщение было отмечено Revanhol как решение

Решение

Assembler
1
2
3
4
5
6
7
8
9
10
11
  MOV   DPTR,#6H
  MOVX  A,@DPTR 
  JB    ACC.1,L1
  RR A
  RR A
  RR A
  MOV R3,A
  SJMP  LEND
L1:
  MOV   P0,A
LEND:
1
0 / 0 / 0
Регистрация: 17.05.2019
Сообщений: 8
04.12.2019, 02:20  [ТС]
Цитата Сообщение от northener Посмотреть сообщение
Assembler
1
2
3
4
5
6
7
8
9
10
11
  MOV   DPTR,#6H
  MOVX  A,@DPTR 
  JB    ACC.1,L1
  RR A
  RR A
  RR A
  MOV R3,A
  SJMP  LEND
L1:
  MOV   P0,A
LEND:
Спасибо большое, я кажется разобрался)
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,612
04.12.2019, 02:38
Цитата Сообщение от Revanhol Посмотреть сообщение
я кажется разобрался
Когда кажется, креститься надобно.
Надеюсь вы что-то, где-то прочитали про регистр DPTR, про инструкцию MOVX и инструкцию SJMP
Если будут вопросы, обращайтесь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.12.2019, 02:38
Помогаю со студенческими работами здесь

Разработать на ассемблере и отладить программу, которая выполняет
Разработать на ассемблере и отладить программу, которая выполняет: 1) ввод с клавиатуры двух 4-значных шестнадцатеричных чисел (для ввода...

Вычислить на ассемблере МК51 значения функции для Х из промежутка [1;5] с шагом 1
Задание звучит так: Вычислить на ассемблере МК51 значения функции для Х из промежутка с шагом 1. Результат разместить в память. ...

Написать на Ассемблере и отладить программу реагирования курсор мыши Вывести меню с первыми, вторыми кушаньями и десертом. Против каждого кушанья дол
Написать на Ассемблере и отладить программу реагирования курсор мыши Вывести меню с первыми, вторыми кушаньями и десертом. Против каждого...

Составить и отладить программу
Составить и отладить программу нахождения расстояния на плоскости между точками (х1,у1) и (х2,у2). (d=корень из всего этого(x2-x1)^2...

Составить и отладить программу
Составить и отладить программу вычисления значения функции с помощью бесконечного ряда Тейлора с точностью заданного ε по формуле:


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru