![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 25.03.2007
Сообщений: 67
|
![]()
помогите решить такую задачу:
Есть положительное число типа Integer - последовательность 4-х байт если я не ошибаюсь есть также массив из 8 байт mass array [0..7] of byte так вот необходимо сделать такую вещь: из первого байта integer сбросить в ноль первый бит пердварительно его запомнив и записать его в массив байтов. во втором байте сдвинуть все биты влево, и присвоить значение последнего байта (самому правому) запомненного байта на предыдущей итерации ну и дальше продолжать в таком духе, идеи конечно етсь но туманные, понимаю что наверно нужно использовать побитовое and и or а для звдига shi илил shr забыл уже блин) Может кто нибудь прольёт свет на мой вопрос? буду благодарен ![]() |
![]() |
![]() |
![]() |
#2 |
Бредовый
Форумчанин
Регистрация: 15.11.2008
Сообщений: 285
|
![]()
Кодировать что-то собрался?
Чем точнее и проще задан вопрос, тем проще на него получить точный ответ.
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 25.03.2007
Сообщений: 67
|
![]()
Это кодировение велечин переменной длины в midi файлах таким спосбом создатели пару килобайт места экономили, когда память была на вес золота
![]() |
![]() |
![]() |
![]() |
#4 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 27.10.2008
Сообщений: 45
|
![]()
Да, как-то невнятно, хотя я в свое время с ассемблером возился...
![]() |
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 25.03.2007
Сообщений: 67
|
![]()
таак попробую доступней обьяснить с примерами....помогите уж мне ато я сам загнусь)
например у нас есть число скажем 428 типа integer - это число как параметр передайтся функции что такое 428 это 110101100 в двоичной тоетсь это последовательность из 9-и бит, масива бит так сказать Integer это у нас последовательность четырёх байт верно? тоесть это чисто предстваленно следующим образом (исходя что в байте 8 бит) 1-й байт 00000000 2-й байт 00000000 3-й байт 00000001 4-й байт 10101100 первое что нужно это загнать эти байты в array of byte далее уже будем работать с ними как с элементами массива типа byte начинаем с 4-ого байта (10101100) первый его бит нужно сбросить в ноль т.е. из (10101100) получить (00101100) но сброшенный байт тоесть то чно он =1 запоминаем далее берём 3-й байт (00000001) сдвигаем все его элементы влево на 1 бит получим (00000010) теперь на осовободившееся место (00000010) дописываем запомненый бит на передыдущей итерации должны получить (00000011) Я с двоичным кодом никогда не работал плотно, как мне это реализовать может есть такие кто на этом уже собаку сьел ? ![]() Последний раз редактировалось lacost; 18.11.2008 в 22:11. |
![]() |
![]() |
![]() |
#7 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
![]()
Ток не ясно что вообще происходит и что в итоге должно выйти...
А так на быструю руку исходя из последнего поста... за точность не ручаюсь )) думаю и сами сможете подрехтовать Код:
![]() Последний раз редактировалось BOBAH13; 19.11.2008 в 00:30. |
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 25.03.2007
Сообщений: 67
|
![]()
BOBAH13, спасибо вам большое, как рас те примеры кода которые я ждал, теперь могу и сам всё привести в надлежащий вид, ещё рас спасибо.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите с кодом | Кронос | Общие вопросы Delphi | 6 | 04.05.2008 21:13 |
Помогите с кодом | prostoCHEL | Общие вопросы Delphi | 4 | 02.03.2008 21:56 |
Не понятно с кодом | Михаил Юрьевич | Общие вопросы Delphi | 2 | 08.02.2008 08:07 |
Что с кодом ? | Look | Общие вопросы C/C++ | 11 | 06.11.2007 14:48 |