Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 |

 

  Вопрос: Проблемы с кодировкой Добавлено: 07.10.06 20:55  

Автор вопроса:  -АлександР- | Web-сайт: sham.clan.su

Ответить

  Ответы Всего ответов: 24  

Номер ответа: 16
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #16
Добавлено: 09.10.06 22:32
Так, значит ты, друг мой, взялся идти по тому черному пути, на котором я основательно застрял: "Сделать свой формат графики, сжать свой формат графики". Бьюсь уже полгода. Фигня - ЖПЕг или ГИФ не переплюнуть. Хотя хочется :))
Да, взялся... Одна - голова хорошо, а две - лучше. Может объединимся?
Насчет сжатия - попробуй поработать на битовом уровне - переводи байты (0-256) в биты (00000000-11111111) и шифруй там. Мне ничего пока не дало. Можно сделать 255-ричную систему счисления, и записывать 0 как 1, а 255 символ уже как 2 символа. Если надо - могу прислать бэйсиковский перевод универсальной формулы конвертации систем счисления. Но её придется отлаживать вручную - искать пределы допустимых значений.
отремонтирую - ты только пришли

Ответить

Номер ответа: 17
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #17
Добавлено: 09.10.06 22:41
Neco
Минимально 4 бита
Почему четыре бита? от 0 до 10, продемонстрируй логический ход событий, я че-то не догоняю, как это на барсике сделать побитово?

Ответить

Номер ответа: 18
Автор ответа:
 Neco



ICQ: 247906854 

Вопросов: 133
Ответов: 882
 Web-сайт: neco.pisem.net
 Профиль | | #18
Добавлено: 09.10.06 23:33
Option Explicit

Private Type TwoAsOne
    one As Long
    two As Long
End Type

Private Sub Form_Load()
    Dim p As TwoAsOne
    p.one = 3: p.two = 8
    Dim b As Byte
    b = ConvertToByte(p)
    p = ConvertFromByte(b)
    Debug.Print p.one, p.two
End Sub

Private Function ConvertToByte(ByRef para As TwoAsOne) As Byte
    If para.one < 0 Or para.one > 15 Then GoTo RaiseError
    If para.two < 0 Or para.two > 15 Then GoTo RaiseError
    ConvertToByte = para.one + para.two * 16 ' накладываем XXXX0000 на 0000YYYY и получаем XXXXYYYY
    Exit Function
RaiseError:
    Err.Raise -999, "ConvertToByte", "Числа должны быть в диапазоне 0-15"
End Function
Private Function ConvertFromByte(ByVal one_byte As Byte) As TwoAsOne
    ConvertFromByte.one = one_byte And 15 ' снимаем по маске 00001111
    ConvertFromByte.two = (one_byte And 240) / 16 ' снимаем по маске 11110000 и сдвигаем на четыре бита
End Function

Ответить

Номер ответа: 19
Автор ответа:
 Neco



ICQ: 247906854 

Вопросов: 133
Ответов: 882
 Web-сайт: neco.pisem.net
 Профиль | | #19
Добавлено: 09.10.06 23:38
Типа того...

Млин, по-любому блокнота не вижу! :)

Ответить

Номер ответа: 20
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #20
Добавлено: 10.10.06 14:30
Млин, по-любому блокнота не вижу! :)
Ну это я так текстовой файл называю, чтобы всё время не писать "текстовой файл" :)

Ответить

Номер ответа: 21
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #21
Добавлено: 10.10.06 16:18
Neco
У меня вопрос, или скорее просьба:

В голове провал какой-то на битовом наложении, никак не могу усвоить его механизм.
 Можешь дать ссылку по этой теме почитать, что-нибудь с битовыми "накладываниями" и "снятиями"? Чтобы можно было с этим разобраться,... о роли and и or... - в них

Ответить

Номер ответа: 22
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #22
Добавлено: 10.10.06 16:52
А во всё, разобрался, благодарю

http://www.progs.biz/vbnet/console/lessons/018.aspx

Ответить

Номер ответа: 23
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #23
Добавлено: 12.10.06 23:11
Neco, я внимательно изучил твой код... это конечно интересно, все же - здесь это неприменимо. Побитовый слвиг ничего не дает - он ещё уступает 255-ричной системе...
Кстати, Хаффман тоже нисколько её не превосходит...

Ответить

Номер ответа: 24
Автор ответа:
 Nj



ICQ: 223663115 

Вопросов: 21
Ответов: 285
 Профиль | | #24 Добавлено: 14.10.06 15:32
2 -АлександР-
Да, взялся...
Поздравляю!
Одна - голова хорошо, а две - лучше.
Бес сомнений!
Может объединимся?
Поддерживаю!
—————————————————————————————————————
Принято единогласно (2 из 2) :)


Спасибо за ссылку - мозги у меня после ХОР поксорились и перешли в отрицательное состояние Х(

2 Neco Спасибо за код, попробую проанализировать... :)

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам