Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

Закрытая тема
Опции темы
Непрочитано 10.01.2007, 10:17   #1
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию преобразование числа для занесения его в регистр на PIC16F84

Начал изучать пики на ассамблере,попалась програмка сложения двух трехбайтовых чисел,все понятно там,но мне хочется занести свои числа в регистры и сложить потом проверить правельность результата, не могу преобразовать число из десятичного в двоичный и положить в регистры например 25555

как преобразовать число из регистров в десятичное понял: по формуле (regh*256+regm)*256+regl
где regh-старший регистр числа
regm-средний регистр числа
regl-младший рестр числа

как из десятичного в регистры пока не понял,но если подумать и поломать голову пойму,мож кто поможет быстрей
Реклама:
CERGEI1982 вне форума  
Непрочитано 10.01.2007, 14:46   #2
nml
Супер-модератор
 
Аватар для nml
 
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,378
Сказал спасибо: 1,955
Сказали Спасибо 1,328 раз(а) в 578 сообщении(ях)
nml на пути к лучшему
По умолчанию Re: преобразование числа для занесения его в регистр на PIC1

Сообщение от CERGEI1982
как из десятичного в регистры пока не понял,но если подумать и поломать голову пойму,мож кто поможет быстрей
Запускаете обычный виндовский калькулятор в инженерном режиме, вводите число, переключаетесь в HEX формат. Не, ну конечно можно и ручками, но все же так проще.

Кстати если взять NumLock калькулятор, так он даже в римские переводить умеет
nml вне форума  
Непрочитано 10.01.2007, 16:43   #3
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию

ну попробуй переведи например два числа 25555 и 16000 шестидеричные ,внеси в пик,пусть он сложит их и проверь ответ,вот я о чем
CERGEI1982 вне форума  
Непрочитано 10.01.2007, 16:49   #4
nml
Супер-модератор
 
Аватар для nml
 
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,378
Сказал спасибо: 1,955
Сказали Спасибо 1,328 раз(а) в 578 сообщении(ях)
nml на пути к лучшему
По умолчанию

Сообщение от CERGEI1982
ну попробуй переведи например два числа 25555 и 16000 шестидеричные ,внеси в пик,пусть он сложит их и проверь ответ,вот я о чем
?????

25555.*=*0x63D3, то есть мл. байт 0xD3, следующий 0x63, старший 0x00 (речь шла о трехбайтных)

Или я таки чего не понял?
nml вне форума  
Непрочитано 10.01.2007, 17:24   #5
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию

ДА ОБ ЭТОМ ,КАК ПРЕОБРАЗОВАЛ?
CERGEI1982 вне форума  
Непрочитано 10.01.2007, 17:47   #6
nml
Супер-модератор
 
Аватар для nml
 
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,378
Сказал спасибо: 1,955
Сказали Спасибо 1,328 раз(а) в 578 сообщении(ях)
nml на пути к лучшему
По умолчанию

Сообщение от CERGEI1982
ДА ОБ ЭТОМ ,КАК ПРЕОБРАЗОВАЛ?
Ну ладно, мне не влом и повторить...

Запускаете обычный виндовский калькулятор в инженерном режиме, вводите число, переключаетесь в HEX формат. Увидите то же число в HEX формате.
nml вне форума  
Непрочитано 10.01.2007, 18:17   #7
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию

ИЗВИНЯЙ СРАЗУ НЕ СООБРАЗИЛ,СПАСИБО ЗА ПОМОЩЬ
CERGEI1982 вне форума  
Непрочитано 10.01.2007, 18:44   #8
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию

ВСЕ СХОДИТСЯ,ОКАЗЫВАЕТСЯ ВСЕ ПРОСТО
CERGEI1982 вне форума  
Непрочитано 11.01.2007, 12:30   #9
paha1956
Временная регистрация
 
Регистрация: 17.05.2006
Сообщений: 72
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
paha1956 на пути к лучшему
По умолчанию

Извиняйте, если не в тему, но вообще есть стандартный алгоритм перевода чисел из одной системы счисления в другую.
Нагляднее всего перевести десятичное число в другую систему, например по основанию 16. Делим наше число (25555) на основание системы счисления, в которую нужно перевести число (16). Результат сохраняем как целое число и остаток: 25555/16=1597 и 3 в остатке. Этот остаток будет самой младшей цифрой нашего нового числа по основанию 16.
Далее делим целую часть результата деления на основание 16 и получаем снова целое и остаток, который будет второй цифрой нашего нового числа: 1597/16=99 и 13, т.е. D.
Далее повторяем до тех пор, пока после очередного деления не останется число, меньшее основания нашей новой системы, т.е. меньшее 16:
99/16=6 и 3 в остатке, 3 – следующая цифра нашего числа;
6 ‹ 16, поэтому 6 – последняя, самая старшая, цифра нашего 16-ричного числа.
В конечном итоге получаем:
25555=0х63D3.

Ву а ля!

PS Таким способом можно перевести число из любой системы счисления в любую другую, только делить надо по правилам той системы, из которой переводят число. Нагляднее всего перевести число в десятичную систему, а уже потом переводить его в другую систему счисления.
__________________
"Имею честь иметь Вашу честь в своём доме..."
paha1956 вне форума  
Непрочитано 11.01.2007, 17:47   #10
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию

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

Закладки


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Простая программа для PIC16F84 eleorka Микроконтроллеры, АЦП, память и т.д 16 31.03.2008 07:16
mikroC компилятор для пиков как его крякнуть ctefan Proteus, KiCAD и другие ECAD 7 01.01.2008 16:22
Сдвиговый регистр - как организовать цепочку elcreator TTL и CMOS логика 8 30.10.2007 20:39
ЖКИ, микроконтроллер и сдвиговый регистр? SergeyM_V Микроконтроллеры, АЦП, память и т.д 1 08.06.2005 21:44
Помогите написать программу для микросхемы pic16f84 lexacs Микроконтроллеры, АЦП, память и т.д 0 27.01.2005 00:45


Часовой пояс GMT +4, время: 21:58.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot