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

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

23.11.2016, 15:16. Показов 3821. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите решить задачу:
Составить на ассемблере МК51 и отладить программу, которая по опросу содержимого ячейки с адресом 0004Н внешней памяти программ выполняет следующие действия:
- если в первом разряде содержимого данной ячейки 1, то это содержимое выдается в порт Р0, иначе сдвигается на три разряда и записывается в регистр R6 банка 0.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.11.2016, 15:16
Ответы с готовыми решениями:

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

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

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

5
1184 / 670 / 113
Регистрация: 15.05.2012
Сообщений: 4,080
23.11.2016, 17:15
Сначала составить алгоритм.
0
0 / 0 / 0
Регистрация: 18.12.2015
Сообщений: 4
26.11.2016, 12:38  [ТС]
Цитата Сообщение от pyzhman Посмотреть сообщение
Сначала составить алгоритм.
Я составил примерный алгоритм, но не могу понять, что делать дальше
1. Сначала активируем память программ: set->memory-map->read-only->c:0000h -> c:0006h
2. Выводим на экран, смотрим на изменения: dump->select area: 2 -> c:0000h. Получаем вот это:

Дальше я не могу понять, нужно ли вписывать значение в 0004h и какое, и как сделать проверку, что в первом разряде будет стоять 1. Это делает команда "CJNE A,direct,addr
Команда "сравнение и переход, если не равно" сравнивает содержимое
аккумулятора A с содержимым ячейки резидентной памяти данных (либо
регистра специальных функций), 8-разрядный адрес которой (которого)
определяется символическим именем direct, и выполняет переход по адресу
addr, если содержимое A не равно содержимому используемой ячейки или
используемого регистра, в противном случае выполняется следующая команда".?
И как сделать сдвиг на 3 разряда? Команда RL A сдвигает влево на 1 бит, RR А вправо на 1 бит - т.е. мне её надо использовать 3 раза и в какую сторону?
0
 Аватар для Ethereal
6773 / 2741 / 385
Регистрация: 17.02.2013
Сообщений: 4,048
27.11.2016, 01:56
Цитата Сообщение от Skeriy Посмотреть сообщение
8-разрядный адрес которой (которого)
определяется символическим именем direct
direct здесь означает режим адресации. По буржуйски "direct addressing mode", по русски "прямая адресация".

Добавлено через 3 минуты
Цитата Сообщение от Skeriy Посмотреть сообщение
Составить на ассемблере МК51 и отладить программу, которая по опросу содержимого ячейки с адресом 0004Н внешней памяти программ выполняет следующие действия:
Прочитать эту ячейку в аккамулятор будет так :
Code
1
2
3
    mov dptr, #4
    clr a
    movc    a, @a+dptr
Добавлено через 2 минуты
Цитата Сообщение от Skeriy Посмотреть сообщение
т.е. мне её надо использовать 3 раза и в какую сторону?
Так условие задачи кто писал ? Почему там сказано сдвигать, но не сказано куда ?

Добавлено через 2 минуты
Цитата Сообщение от Skeriy Посмотреть сообщение
Команда RL A сдвигает влево на 1 бит
RL - Rotate Left, вращать влево. Вращать это не совсем то, что сдвигать. При вращении влево старший бит перелетит в младший.

Добавлено через 2 минуты
Вот
Code
1
2
    clr c
    rlc a
действительно сдвинет аккамулятор 1 раз влево.
2
0 / 0 / 0
Регистрация: 18.12.2015
Сообщений: 4
27.11.2016, 15:58  [ТС]
Цитата Сообщение от Ethereal Посмотреть сообщение
Так условие задачи кто писал ? Почему там сказано сдвигать, но не сказано куда ?
Ну вот такую задачу препод дал и иди сам разбирайся, а уже в эту среду сдавать надо.
У меня кстати получилось немного другое решение. Может я что-то неправильно понимаю, но чтобы занести значение в ВПД(внешняя память данных) ячейки 0004h нужно в PC выбрать эту ячейку 0004h и сразу рядом в серое окошко написать значение, разве не так? Но в ходе теста проги я понял, что не каждое значение подходит и оно меняет формулу в этой ячейке...
0
0 / 0 / 0
Регистрация: 18.12.2015
Сообщений: 4
27.11.2016, 16:06  [ТС]
И еще я вместо RL я делал MUL AB(в B у меня находилось значение 08 - 2^3, в аккумуляторе находилось значение, которое я записал в 0004h). Это, что насчет сдвига. Например число 11 в 0004h сначала в А было таким 00010001. Так как по условию задачи 1 разряд равен 0, то нужно произвести сдвиг на 3 разряда, и в А в конце получаем 10001000, а в R6 значение 88.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.11.2016, 16:06
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru