Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/25: Рейтинг темы: голосов - 25, средняя оценка - 4.80
4 / 4 / 2
Регистрация: 04.04.2015
Сообщений: 186
1

Преобразование двоичного кода в двоично-десятичный (PIC16F84)

21.11.2016, 12:37. Показов 4516. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, вот задание:
Кликните здесь для просмотра всего текста
Декодирование входного 5-битного двоичного кода в 8-битный двоично-десятичный

Я новичок в ассеблере, только буквально вчера установил
Нашел на просторах интернета пример, но там наоборот преобразуют 8битный двоично-десятичный код в 5битный двоичный.
Помогите мне переделать
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <p16F84.inc>
   
   
  BCF STATUS, RP0 ;инициализируем порт А на выход
  CLRF PORTA
  BSF STATUS, RP0 
  MOVLW 0x0  
  MOVWF TRISA  
   
   
  BCF STATUS, RP0  ;инициализируем порт B на вход
  CLRF PORTB 
  BSF STATUS, RP0 
  MOVLW 0xFF
  MOVWF TRISB
   
  BCF STATUS,RP0
   
   
  loop: 
   
  MOVF PORTB, W     ;перенос значения portb в W
  MOVWF 10H            ;перенос значения рег W в регистр 10H
   
   
      andlw   0x0F                       ;преобразование кода в пятиразрядный
   
      btfss    10H,4
      goto     done_with_10
      addlw   0x0A  
  done_with_10
      btfss    10H,5
      goto     done_with_20
      addlw   0x14
  done_with_20
   
   
  MOVWF PORTA                  ;перенос значения рег W в регистр PortA
  GOTO loop
  END
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.11.2016, 12:37
Ответы с готовыми решениями:

Перевод двоичного в двоично-десятичный код
Здравствуйте, необходимо перевести двоичный код в двоично-десятичный. Много раз пробовал , ничего...

[MCS-51 AT89C51] Преобразование целого 16-ти битного двоичного числа без знака в двоично-десятичное
Здраствуйте, нашел в книге Микроконтроллеры, это просто Том 3 следующий код. Но никак не могу...

Перевод числа из двоичного формата в двоично-десятичный
Подскажите как переводить числа из одного формата в другой.

Алгоритм преобразования двоичного в двоично-десятичный код
Добрый день! Передо мной стоит задача реализовать на VHDL это устройство. Я вроде не нуб в учёбе,...

Преобразование двоичного в двоично-десятичный код Verilog
Написать код и протестировать в TestBench. Помогите пожалуйста....

5
Модератор
Эксперт по электронике
8477 / 4335 / 1643
Регистрация: 01.02.2015
Сообщений: 13,462
Записей в блоге: 8
22.11.2016, 00:14 2
Вы привели пример для микроконтроллера PIC16F84.
Для какого процессора (и для какой ОС), какого компилятора Assembler вы ищите помощи?
0
6770 / 2739 / 384
Регистрация: 17.02.2013
Сообщений: 4,047
22.11.2016, 05:52 3
Цитата Сообщение от danilshik Посмотреть сообщение
Декодирование входного 5-битного двоичного кода в 8-битный двоично-десятичный
На ассемблере IBM PC это делается в две команды :
Код
D4 0A		aam
D5 10		aad	10h
0
4 / 4 / 2
Регистрация: 04.04.2015
Сообщений: 186
22.11.2016, 11:03  [ТС] 4
Mplab, как раз для микроконтроллера PIC16F84
0
6770 / 2739 / 384
Регистрация: 17.02.2013
Сообщений: 4,047
24.11.2016, 06:42 5
По идее надо написать целочисленное деление в столбик (двоичный), поскольку готовой команды деления у PIC-а нет. Но поскольку у тебя входной код 5-битный, то максимальное его значение 31. А тогда можно делить вычитанием 10-ки пока не станет меньше нуля. В худжем случае вычесть придется 4 раза.

Добавлено через 10 минут
Код
;Пусть входной 5-битный код в регистре W
;Старшие 3 бита регистра W заведомо нулевые.
	CLRF	HI
	ADDLW	-10
	BTFSS	STATUS,C
	GOTO	DONE
	INCF	HI,F
	ADDLW	-10
	BTFSS	STATUS,C
	GOTO	DONE
	INCF	HI,F
	ADDLW	-10
	BTFSS	STATUS,C
	GOTO	DONE
	INCF	HI,F
	ADDLW	-10
DONE:	ADDLW	10
	SWAPF	HI,F
	IORWF	HI,W
;Результат в регистре W
Что-то типа того.
0
4 / 4 / 2
Регистрация: 04.04.2015
Сообщений: 186
25.12.2016, 11:53  [ТС] 6
Объясните пожалуйста алгоритм работы
0
25.12.2016, 11:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.12.2016, 11:53
Помогаю со студенческими работами здесь

Кодопреобразователь четырехразрядного прямого двоичного кода в двоично- десятичный
ЯЗЫК VHDL Прямой двоичный код должен задаваться с помощью слайдеров (din). Результат преобразования...

Нужно табличное задание на булевых функциях преобразования двоично-десятичного кода 8421+3 в двоично-десятичный код 2124
Здравствуйте! Нужно табличное задание на булевых функциях преобразования двоично-десятичного кода...

Осуществить перевод из двоичного кода в десятичный
Помогите пожалуйста. Нужно срочно решить несколько задач самым простейшим образом(без библиотек и...

написать программу перевода двоичного кода в десятичный
Помогите решить задачу. Задано число в двоичной системе счисления А2= 11010011101. Перевести...

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

На основе дешифратора и мультиплексора построить преобразователь двоичного кода в десятичный
Здравствуйте. С дешифратором я управился (скрин), вроде как, а что делать дальше - понятия не имею....


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru