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

Преобразовать 16-ти разрядный двоичный код в код 8-4-2-1

27.12.2010, 13:34. Показов 10658. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста составить программу для Intel 8051, которая преобразует 16-ти разрядный двоичный код в код 8-4-2-1 и исправит ошибки, если они случатся. Двоичный слова поступают в порты Р0 и Р1, а выходят с Р2 и Р3.
Гуглил и яндексил. Голову ломаю уже несколько дней, но ничего толкового не придумал. Думаю делать так:
например есть число 0010 0100 0010 0001(двоичный)=2421(двочно-десятичный 8-4-2-1),
первые восемь разрядов идут на Р0, последние восемь - на Р1, следовательно первые 2 разряды полученного кода идут на Р2, последные - на Р3. Но как это реализовать, как програмно преобразовать двоичный код в десятичный? SOS / Заранее благодарю.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.12.2010, 13:34
Ответы с готовыми решениями:

Преобразовать двоичный код в двоично-десятичный код (Intel 8051)
Прочитать с порта Р0 один байт двоичного кода 8-4-2-1, превратить его в двоично-десятичный код и выдать полученную информацию в порт Р1-Р2,...

Разработать узел, осуществляющий преобразование число-импульсного кода в 8-разрядный параллельный двоичный код
Помогите хоть кто нибудь пожалуйста, я уже руки опустил ничего не получается Вот задание: Разработать узел, осуществляющий...

что такое четырёхразрядные(4-х разрядный двоичный код)?
что такое четырёхразрядные(4-х разрядный двоичный код)?? Пожалуйста объясните в человеческом языке)

3
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16373 / 7685 / 1080
Регистрация: 11.11.2010
Сообщений: 13,759
27.12.2010, 14:06
vlrep, а чем код 8-4-2-1 отличается от шестнадцатеричного?
0
0 / 0 / 0
Регистрация: 18.05.2010
Сообщений: 3
27.12.2010, 16:05  [ТС]
Mikl_
Не шестнадцатеричный , а двоичный только шестнадцатеразрядный (16 циферок, думаю у тебя просто опечатка)

Любое привычное нам десятичное число может быть представлено как совокупность единиц и нулей двоичнойсистемы. Десятичное число 7, например, в двоичной системе = 0111. Здесь крайний левый символ- старший разряд, а крайний правый символ-младший разряд четырехразрядного двоичного кодового числа. Перевод этого двоичного числа в число десятичной системы счисления выполняют в таком порядке: 0111=0*2^3+1*2^2+1*2^1+1*2^0 =0+4+2+1 =7. (2^3=2*2*2=8)
В основе преобразования двоичного числа в десятичное лежит число 2. Сам же код в этом случае называют двоичным натуральным или кодом 8-4-2-1.
Есть двоичный код 0010 0100 0010 0001, в десятеричном это 9249 , а в 8-4-2-1 берутся тетрады (по 4 разряда), то есть будет отдельно переводится 0010(в двоичном)=2( в десятеричном), и т. д. 0100=4.....получится 2421, но 0010 0100 0010 0001( в двоичном)= 0010 0100 0010 0001(в 8-4-2-1) так?

Из всего написаного, (если я правильно понял задачу) нужно перевести 16-ти разрядный двоичный код в 8-4-2-1, а они ничем не отличаются кроме того что его разрядность = 4 ну и соответственно способ декодирования в десятеричную систему.....во как я затупил.
0
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16373 / 7685 / 1080
Регистрация: 11.11.2010
Сообщений: 13,759
28.12.2010, 04:57
vlrep, Шестнадцатеричная система счисления (шестнадцатеричные числа) — позиционная система счисления по целочисленному основанию 16. В качестве шестнадцатеричных цифр используются десятичные цифры от 0 до 9 и латинские буквы от A до F то есть (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F) Перевод двоичного кода в шестнадцатеричный:
0000=0 0001=1 0010=2 0011=3 0100=4 0101=5 0110=6 0111=7 1000=8 1001=9 1010=A 1011=B 1100=C 1101=D 1110=E 1111=F Повторяю вопрос: чем код 8-4-2-1 отличается от шестнадцатеричного?
А для решения задачи, наверное, стоит заглянуть в Лучший сборник книг в электронном виде по Ассемблеру и найти там ссылку на:
17. Программирование на языке ассемблера для микроконтроллеров семейства i8051 - Каспер Эрни
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.12.2010, 04:57
Помогаю со студенческими работами здесь

Перевод положительного 6-разрядного восьмеричного ASCII-числа из буфера в 16-разрядный двоичный код в АХ (ассемблер)
Здравствуйте. Помогите пожалуйста написать программу: Перевести положительное 6-разрядное восьмеричное ASCII-число из буфера в...

преобразовать двоичный код в
Добрый день! Я пишу программу, которая заносит изображение в базу данных (тип данных BLOB), а потом извлекает ее оттуда и выводит...

Преобразовать двоичный код в десятичный
Ребят, нужно дополнить код, нужно, чтобы результат выполнения программы , то есть двоичный код преобразовался в десятичную СИ, при этом не...

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

Как двоичный код из Sql server преобразовать в формат Xps в Wpf?
<Grid> <FlowDocumentReader x:Name="rishTextBox"> <FlowDocument ColumnWidth="150" ColumnGap="10"> ...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru