Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Аватара пользователя
Lina_Inverse
Первый раз сказал Мяу!
Сообщения: 32
Зарегистрирован: Чт апр 12, 2012 20:01:26
Откуда: Муром

Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение Lina_Inverse »

Здравствуйте, многоуважаемые пользователи данного форума!
Осмелюсь попросить вас о помощи... Поставлена задача: перевести двухбайтное двоично-десятичное число в двоичное на КР580ВМ80. В голове не укладывается, как реализовать это. Слышала о методе сдвига и т.д.
Понимаю, задачка глупая, но она у меня не получается.
Пожалуйста, помогите!
:cry:
С наилучшими пожеланиями, студент из г. Муром..... )
-А есть аудиокниги по схемотехнике?
- Нет, наверно. Но ты попроси какую-нибудь девушку прочитать..так, эротичным голосом.
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение YS »

О-о-о, КР580ВМ80! Только сегодня днем лабу с ним делал. :)))

В обчем, коли Вы не читали методички, BCD (двоично-десятичные числа) - это (чаще всего) когда в одном байте записано две цифирки (packed BCD). Т.е., 0x54 понимается именно как 54, а не как 0x54 = 84.

Мораль: надо выдвинуть каждую цифру, умножить ее на множитель, соответствующий позиции и сложить с остальными.

Код: Выделить всё

binary = (bcd & 0x000F) + ((bcd & 0x00F0) >> 4) * 10 + ((bcd & 0x0F00) >> 8) * 100 + ((bcd & 0xF000) >> 12) * 1000;


А вообще, они у Вас упакованные, или по одной цифре в байте?
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Аватара пользователя
Lina_Inverse
Первый раз сказал Мяу!
Сообщения: 32
Зарегистрирован: Чт апр 12, 2012 20:01:26
Откуда: Муром

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение Lina_Inverse »

упс, ясненько))) у меня тоже сегодня была лабораторная по КР580Вм80... странное совпадение, не правда ли?))
По одной цифре в байте... видимо.
Мысль интересная. Будем думать дальше. Спасибо за идею.
-А есть аудиокниги по схемотехнике?
- Нет, наверно. Но ты попроси какую-нибудь девушку прочитать..так, эротичным голосом.
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение YS »

странное совпадение, не правда ли?))


Да чо там совпадение, это же судьба! :)))

Мысль интересная. Будем думать дальше.


Так а чего тут думать-то? Тут переписывать надо на тот язык, на котором пишете, вот и все.

Я вот на своих лабах в машинных кодах писал.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
SmarTrunk
Друг Кота
Сообщения: 6014
Зарегистрирован: Чт ноя 26, 2009 11:16:50
Откуда: Москва

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение SmarTrunk »

А аппаратного умножения в ВМ80 нет... Что же, надо писать подрограмму... в машинных кодах?
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение pyzhman »

В машкодах на 580 даже мне не доводилось писать! Вы там чего? На асме батенька, на асме.
Docendo discimus
Аватара пользователя
Lina_Inverse
Первый раз сказал Мяу!
Сообщения: 32
Зарегистрирован: Чт апр 12, 2012 20:01:26
Откуда: Муром

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение Lina_Inverse »

дяденьки, ну помогите, ну реализуйте хоть как-нибудь эту задачку с переводом... я волшебное слово знаю - ПОЖАЛУЙСТА)))) :))
-А есть аудиокниги по схемотехнике?
- Нет, наверно. Но ты попроси какую-нибудь девушку прочитать..так, эротичным голосом.
SmarTrunk
Друг Кота
Сообщения: 6014
Зарегистрирован: Чт ноя 26, 2009 11:16:50
Откуда: Москва

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение SmarTrunk »

А мне приходилось, в ЮТ-88. 8) Но это было привычно после замечательного очень мощного программируемого калькулятора МК-61. В него тоже программа вводилась в кодах, больше 100 шагов!! И программу в него приходилось вводить заново каждый раз при включении, энергонезависимой памяти не было. :cry: А батарейки (3 АА) жрал страшно своим люминесцентным дисплеем.

Lina
Может, удастся уговорить преподавателя на более современные МК, например AVR?
Аватара пользователя
Lina_Inverse
Первый раз сказал Мяу!
Сообщения: 32
Зарегистрирован: Чт апр 12, 2012 20:01:26
Откуда: Муром

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение Lina_Inverse »

нет, что Вы, это не реально, уговорить его))) мы делаем эти задачи на восьмидесятом, на 48 и 51 процессорах. так что, долго еще мучиться)
-А есть аудиокниги по схемотехнике?
- Нет, наверно. Но ты попроси какую-нибудь девушку прочитать..так, эротичным голосом.
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение YS »

Вы там чего?


А вот так. Стоят стенды с КР580ВМ80, в них зашита программа-монитор. Она умеет записать (с одновременным отображением) HEX-последовательность в память (только последовательно! Ошибся - входи в режим по новой), запустить программу, заполнить память, посчитать КС. Есть кнопка перехода в пошаговый режим. Все.

Отображение на семисегментниках. В пошаговом режиме - только двоичный код на светодиодах (адрес/данные, тупо уровни на шинах).

Сегодня писал бегущий огонек...

Изображение

Кусок методички:

Изображение

***

я волшебное слово знаю - ПОЖАЛУЙСТА))))


Не-е-е-е... Упомянутое слово в значительной мере устарело... :)))
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15549
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение BOB51 »

можно и в машинных кодах при помощи таблицы "ручного транслятора" и листочка бумаги :tea:
а можно сначала еще книжки почитать... к примеру
Токхейм Р.
Основы цифровой электроники: Пер. с англ.-М.: Мир, 1988
:beer:
кстати, MCS51 отнюдь не "вымирающий" и также позволяет делать дамп машинных кодов с помощью "ручного транслятора" 8)
TripleKill
Вымогатель припоя
Сообщения: 671
Зарегистрирован: Вт июн 29, 2010 12:31:49

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение TripleKill »

BOB51, вот именно так я на лабах и программировал этот 580. Руками и калькулятором переводя асм в машкод) MPLAB для пика после этого просто райским звоном показался))

Lina_Inverse, вот вам информация к размышлению.
Для перевода BCD в двоичный вид в общем потребуется всего два действия: в двоичном коде перемножить цифру десятков на 10 и сложить с цифрой единиц (поправьте, если ошибаюсь). Вот например, я хочу умножить 9(BCD) на 10. 9 в двоичном коде - это 1001, 10 - это 1010.
Умножение в столбик:

00001001
*00001010
----------
00000000
00010010
00000000
01001000
----------
01011010

Умножение на 10 любых полубайтных чисел будет аналогично. Чтобы число умножить на 10, нужно сдвинуть его на разряд влево и сложить с ним же, сдвинутым на 3 разряда влево. По сути это и есть алгоритм. Ну а складывать кр580 умеет, если память мне не изменяет. Пример в командах привести не могу, ибо давно их забыл, а быстро не гуглятся. Если зальёте куда-нибудь список ассемблерных команд камня, попробую сообразить чего-нибудь.

Оффтоп: люди, никто не знает ссылок, где бы можно было почитать про работу с USART STM32 в кейле? Хотел отсюда передрать (http://www.scienceprog.com/connecting-stm32-usart-to-standard-io-streams-in-gcc/), но не компилится. Библиотеку усарта в проект добавлял.
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3868
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение Engineer_Keen »

YS писал(а):А вот так. Стоят стенды с КР580ВМ80, в них зашита программа-монитор. Она умеет записать (с одновременным отображением) HEX-последовательность в память (только последовательно! Ошибся - входи в режим по новой), запустить программу, заполнить память, посчитать КС. Есть кнопка перехода в пошаговый режим. Все.

Эти стенды случаем не выполнены в виде здоровенного чУмадана? :)))
Аватара пользователя
Dmitry Dubrovenko
Поставщик валерьянки для Кота
Сообщения: 2349
Зарегистрирован: Вс янв 09, 2011 16:51:39
Откуда: Санкт-Ленинград
Контактная информация:

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение Dmitry Dubrovenko »

SmarTrunk писал(а):Может, удастся уговорить преподавателя на более современные МК, например AVR?
Для начала, i8080 - CPU, а AVR - MCU, и i8080 очень хорошо подходит для изучения основ построения микропроцессорных систем.
Так что, это зря такие "наезды".
А вот вам "виртуальный стенд". :wink:
Вложения
EMULATOR580.zip
(580.96 КБ) 265 скачиваний
Последний раз редактировалось Dmitry Dubrovenko Пт апр 13, 2012 11:40:15, всего редактировалось 1 раз.
ICQ нет, и, в ближайшее время, не будет.
SmarTrunk
Друг Кота
Сообщения: 6014
Зарегистрирован: Чт ноя 26, 2009 11:16:50
Откуда: Москва

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение SmarTrunk »

Dmitry
Да я в курсе, хотя и тут i8086 были бы приятнее. Но раз есть уже стенды...
Аватара пользователя
Dmitry Dubrovenko
Поставщик валерьянки для Кота
Сообщения: 2349
Зарегистрирован: Вс янв 09, 2011 16:51:39
Откуда: Санкт-Ленинград
Контактная информация:

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение Dmitry Dubrovenko »

Ну, коль хотите, вот вам для i8086. :wink:
Вложения
i8086.zip
(428.56 КБ) 239 скачиваний
ICQ нет, и, в ближайшее время, не будет.
Аватара пользователя
Lina_Inverse
Первый раз сказал Мяу!
Сообщения: 32
Зарегистрирован: Чт апр 12, 2012 20:01:26
Откуда: Муром

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение Lina_Inverse »

Спасибо всем большое-пребольшое!!! :))
Всё, побежала делать лабораторную по этой теме.
-А есть аудиокниги по схемотехнике?
- Нет, наверно. Но ты попроси какую-нибудь девушку прочитать..так, эротичным голосом.
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение YS »

Эти стенды случаем не выполнены в виде здоровенного чУмадана?


Именно. С серым таким верхом. :) И еще плата расширения с контроллером портов втыкается. В методичке советуют записывать программу начиная с адреса 0x0800...
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3868
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение Engineer_Keen »

Классный чумадан, на нем я впервые в жизни написал реальную прогу в маш-кодах, правда методички не было, писал по справочнику от Z80 :))) Жаль доступ к нему был всего пару раз, вне учебной программы :(
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: Помогите, пожалуйста!!! Перевод чисел в КР580ВМ80

Сообщение YS »

Ой не, я, пока писал ту прогу, миллион раз с тоской вспомнил и LaunchPad с FET'ом, и STM8/32(L) Discovery с ST-LINK'ами, и остальные внутрисхемные отладчики... :)))
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»