|
|
|||||
Banned
[+4 25.09.09]
[+1 12.11.09] [+4 12.12.09] Регистрация: Sep 2009
Сообщений: 231
|
Цитата:
кажется так правильнее |
|
|||||
не все равно какой то косяк (((
__________________
зная будущее, хотя бы, на 10 минут вперед, можно покорить весь мир... |
|
|||||
Banned
[+4 25.09.09]
[+1 12.11.09] [+4 12.12.09] Регистрация: Sep 2009
Сообщений: 231
|
как записывается -22222 теперь?
и как считывается скажем 0x40 ? |
|
|||||
теперь -22222 записывается так = B2 D2 FE FF 47
читается так = 2147461426 байт 0x40 читается так = -64
__________________
зная будущее, хотя бы, на 10 минут вперед, можно покорить весь мир... |
|
|||||
Banned
[+4 25.09.09]
[+1 12.11.09] [+4 12.12.09] Регистрация: Sep 2009
Сообщений: 231
|
Последний раз редактировалось bicubic_bublic; 10.12.2009 в 15:26. |
|
|||||
мне кажется чтение я не то взял ) какое то оно странное и непонятно где в нем берется минус...
__________________
зная будущее, хотя бы, на 10 минут вперед, можно покорить весь мир... |
|
|||||
Banned
[+4 25.09.09]
[+1 12.11.09] [+4 12.12.09] Регистрация: Sep 2009
Сообщений: 231
|
(result << 25 ) >> 25; - вот тут берется знак
|
|
|||||
вставил новые строки, при записи зациклолось
Добавлено через 37 секунд ааа понятно...
__________________
зная будущее, хотя бы, на 10 минут вперед, можно покорить весь мир... |
|
|||||
Banned
[+4 25.09.09]
[+1 12.11.09] [+4 12.12.09] Регистрация: Sep 2009
Сообщений: 231
|
public function writeVarInt32(value:int):void { if (value == 0) { _byteArray.writeByte(0); return; } var len:uint = 0; // значимая длина в битах var signByte:uint = (0x80000000 & uint(value)) >>> 25; // знак-бит (перемещаем на место 7го бита) var abs:uint = uint(value); while ((abs != 0) && (abs != 0xffffffff)) { abs = abs >> 1; len++; } abs = uint(value); var signBytePos:uint = Math.floor(len / 7) + 1; // длина s32 while (signBytePos-- != 0) { var byte:uint = abs & 0x0000007f; // отрезаем 7 бит от числа abs = abs >> 7; //смещаем на 7 бит if (signBytePos != 0) //если что-то еще осталось добавляем 8-й бит флаг { byte = byte | 0x00000080; } else //последний байт - добавляем знак-бит { byte = byte | signByte; // это вообще кажется не обязательно теперь.. } _byteArray.writeByte(byte); //пишем текущий байт.. } } Последний раз редактировалось bicubic_bublic; 10.12.2009 в 16:57. |
|
|||||
ура заработало! ))))))
Добавлено через 1 минуту супер спасибо огромное!!!
__________________
зная будущее, хотя бы, на 10 минут вперед, можно покорить весь мир... |
Часовой пояс GMT +4, время: 10:00. |
|
« Предыдущая тема | Следующая тема » |
|
|