Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> перевод данных в набор байтов 
:(
    Опции темы
Graf_h
Дата 27.5.2009, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 482
Регистрация: 18.10.2007
Где: г. Ровно, Украина

Репутация: 2
Всего: 5



Здравствуйте, как можно перевести int и float в набор байтов и обратно?может  есть какаято copymemory или еще что то??

Это сообщение отредактировал(а) Graf_h - 27.5.2009, 17:44


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
Alca
Дата 27.5.2009, 18:04 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 7
Всего: 50





--------------------
PM WWW ICQ Skype Jabber   Вверх
zim22
Дата 27.5.2009, 18:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 24
Всего: 69



Цитата(Graf_h @  27.5.2009,  17:41 Найти цитируемый пост)
перевести int и float в набор байтов и обратно?

набор байтов как вы будете хранить? в bitset?


--------------------
PM MAIL   Вверх
Graf_h
Дата 27.5.2009, 18:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 482
Регистрация: 18.10.2007
Где: г. Ровно, Украина

Репутация: 2
Всего: 5



Alca, мне нужно именно перевод в байты, например число int a=5 должно быть представленно в виде 0#0#0#5, а потом обратно из байтов в число.

Добавлено через 1 минуту и 48 секунд
zim22, у меня есть масив unsigned byte, мне нужно туда загнать все байты, и потом оттуда же и читать.


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
azesmcar
Дата 27.5.2009, 18:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



Graf_h

число и так представлает из себя набор байтов. Вопрос в его представлении?
Код

int v = 5;
char *k = (char*)&v;

PM   Вверх
Graf_h
Дата 27.5.2009, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 482
Регистрация: 18.10.2007
Где: г. Ровно, Украина

Репутация: 2
Всего: 5



azesmcar, конечно байты, но ваш вариант не дает нужного результата. мне нужно получить все байты. если число int(4 байта) у меня и должны быть все 4 байта, а не один символ. Вопрос в том как их получить??


Это сообщение отредактировал(а) Graf_h - 27.5.2009, 18:44


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
azesmcar
Дата 27.5.2009, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



Цитата(Graf_h @  27.5.2009,  18:37 Найти цитируемый пост)
azesmcar, конечно байты, но ваш вариант не дает нужного результата. мне нужно получить все байты. если число int(4 байта) у меня и должны быть все 4 байта, а не один символ. Вопрос в том как их получить?? 

все 4 байта - это int. А у меня массив байтов.
Код

int v = 5;
char *k = (char*)&v;
cout << k[0] << endl;
cout << k[1] << endl;
cout << k[2] << endl;
cout << k[3] << endl;

PM   Вверх
mes
Дата 27.5.2009, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



Цитата(Graf_h @  27.5.2009,  17:37 Найти цитируемый пост)
azesmcar, конечно байты, но ваш вариант не дает нужного результата. мне нужно получить все байты. если число int(4 байта) у меня и должны быть все 4 байта, а не один символ. Вопрос в том как их получить?? 

если правильно применить дает

Код

 int value =5;
 for (unsigned i=sizeof(value); i--; )
 std::cout << "#"<<(int)*((char*)&value +i)<<" ";


Добавлено через 1 минуту и 42 секунды
azesmcar, без преобразования к инту выведет немножко не то, чего просит тс.  smile 


--------------------
PM MAIL WWW   Вверх
Graf_h
Дата 27.5.2009, 18:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 482
Регистрация: 18.10.2007
Где: г. Ровно, Украина

Репутация: 2
Всего: 5



mes, может можно как то скопировать память?? ведь в памяти числа представлені байтами, вот взять єти 4 байта, и скопировать в масив байтов?псевдокод:
Код

char* bytes=new char[4]
int a=1234;

copymemory(bytes,a);


Есть в С что то подобное?? 


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
azesmcar
Дата 27.5.2009, 18:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



Цитата(Graf_h @  27.5.2009,  18:48 Найти цитируемый пост)
Есть в С что то подобное?? 

memcpy

PM   Вверх
Graf_h
Дата 27.5.2009, 18:56 (ссылка)   | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 482
Регистрация: 18.10.2007
Где: г. Ровно, Украина

Репутация: 2
Всего: 5



mes, введите число 257 и выведите на экран: должно быть 0#0#2#255 а у вас дает непонятно что:(


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
azesmcar
Дата 27.5.2009, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



Цитата(mes @  27.5.2009,  18:42 Найти цитируемый пост)
azesmcar, без преобразования к инту выведет немножко не то, чего просит тс.  smile  

не совсем понятно чего хочет ТС.
скопировать в массив из 4 байтов? так преобразования достаточно smile

Добавлено через 2 минуты и 32 секунды
Цитата(Graf_h @  27.5.2009,  18:56 Найти цитируемый пост)
mes, введите число 257 и выведите на экран: должно быть 0#0#2#255 а у вас дает непонятно что:( 

У вас неправильное представление о хранении чисел в памяти.

вот ваше число 257 в памяти
00000000 00000000 00000001 00000001
потому и печатает
#0 #0 #1 #1

Добавлено через 3 минуты и 55 секунд
0#0#2#255
это
00000000 00000000 00000010 11111111 = 767
PM   Вверх
Graf_h
Дата 27.5.2009, 19:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 482
Регистрация: 18.10.2007
Где: г. Ровно, Украина

Репутация: 2
Всего: 5



azesmcar, да я пробовал с memcpy:
 unsigned char buffer [4];
  int a=257
 
 
  memcpy(buffer,(void*)&a,sizeof(int));

  printf("%d",buffer[0]);
  printf("%d",buffer[1]);
  printf("%d",buffer[2]);
  printf("%d",buffer[3]);

выводит 1,1,0,0;:(


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
mes
Дата 27.5.2009, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



Цитата(Graf_h @  27.5.2009,  17:48 Найти цитируемый пост)
Есть в С что то подобное??  

есть. Только чтоб предложить Вам то, что Вам нужно, нужно понять, чего Вы хотите получить в итоге.

для копирования памяти можно использовать memcpy
a можно скопировать число  прямиком в массив
Код

  unsigned char bytes[sizeof(int)];
  int i=7;
  *((int*)bytes) = i;

можно использовать юнион
Код

union int2byte
{
    int value;
    unsigned char bytes[sizeof(value)];
};

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




--------------------
PM MAIL WWW   Вверх
azesmcar
Дата 27.5.2009, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



Цитата(Graf_h @  27.5.2009,  19:02 Найти цитируемый пост)
выводит 1,1,0,0;:( 

верно. так и должно быть.
PM   Вверх
Graf_h
Дата 27.5.2009, 19:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 482
Регистрация: 18.10.2007
Где: г. Ровно, Украина

Репутация: 2
Всего: 5



Цитата(azesmcar @  27.5.2009,  18:57 Найти цитируемый пост)
У вас неправильное представление о хранении чисел в памяти.

почему не правильное, байт это от 0 до 255, правильно?? вот мне м нужно число типа инт представить в виде масиво байтов,  а не битов. я же вивожу один байт а не бит.



--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
mes
Дата 27.5.2009, 19:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



Цитата(Graf_h @  27.5.2009,  17:56 Найти цитируемый пост)
ведите число 257 и выведите на экран: должно быть 0#0#2#255 а у вас дает непонятно что:( 

интересно, а какое число тогда представлено так 255#255#255#255 ?
следуя Вашей логике 1020 ? и это в 4х байтах! а ведь комп умудряется в 2х байтах хранить числа от 0-65535 smile
поэтому советую Вам начать с книжки о представлении чисел в памяти эвм.


--------------------
PM MAIL WWW   Вверх
azesmcar
Дата 27.5.2009, 19:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



Цитата(Graf_h @  27.5.2009,  19:04 Найти цитируемый пост)
почему не правильное, байт это от 0 до 255, правильно?? вот мне м нужно число типа инт представить в виде масиво байтов,  а не битов. я же вивожу один байт а не бит.

потому что данные в компьютере хранятся в двоичном формате.
в итоге 257 хранится в памяти как
  1 байт       2 байт       3 байт     4 байт
00000000 00000000 00000001 00000001

3 и 4 байт - равны единице.
PM   Вверх
Graf_h
Дата 27.5.2009, 19:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 482
Регистрация: 18.10.2007
Где: г. Ровно, Украина

Репутация: 2
Всего: 5



mes, я просто хочу получить значение каждого из байтов и записать их вмасив передать по сети, а там вобратно восстановить


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
mes
Дата 27.5.2009, 19:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



хотите увидеть #0#0#2#255
то и оперрируйте с этим числом :
Код

int i= 0<<24 +0<<16+2<<8 +255;
//или
int i = 0x000002ff; // 0хff == 255 



--------------------
PM MAIL WWW   Вверх
azesmcar
Дата 27.5.2009, 19:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



Цитата(Graf_h @  27.5.2009,  19:07 Найти цитируемый пост)
mes, я просто хочу получить значение каждого из байтов и записать их вмасив передать по сети, а там вобратно восстановить 

Код

int main()
{
    int v = 257; //наше число
    char temp[sizeof(int)]; //наш буфер
    memcpy(temp, &v, sizeof(int)); //копируем в буфер
    int t; //новое число
    memcpy(&t, temp, sizeof(int)); //восстанавливаем из буфера

    printf("%d\n", t); //печатаем число - 257
}


Добавлено @ 19:14
Цитата(Graf_h @  27.5.2009,  19:07 Найти цитируемый пост)
передать по сети

я так понимаю о проблемах big-endian, little-endian пока думать рано?

Это сообщение отредактировал(а) azesmcar - 27.5.2009, 19:15
PM   Вверх
Graf_h
Дата 27.5.2009, 19:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 482
Регистрация: 18.10.2007
Где: г. Ровно, Украина

Репутация: 2
Всего: 5



mes, 
Цитата(mes @  27.5.2009,  19:07 Найти цитируемый пост)
интересно, а какое число тогда представлено так 255#255#255#255 ?
 
блин, ступил. правильно! извиняюсь. memcpy работаетsmile! 

 


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
mes
Дата 27.5.2009, 19:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



вот написал специально для Вас пример, показывающий каждое число инт в его байтовом представлении :

Код

union int2bytes
{
        int value;
        unsigned char bytes[sizeof(int)];
};

int main(void)
{

   for (int i=1; i; ++i) // тут задать необходимый интервал, сейчас от 1 и до нуля (не включительно) т.е для всех вариантов включая отрицательные.
   {
      int2bytes u;
      u.value =i;

      std::cout << u.value << " is ";

      for (int j=sizeof(int); j--;)
        std::cout << "#"<<(int)(u.bytes[j]);

      std::cout << std::endl;

    if (!(i%50))     system ("pause"); // для порционости
   }

    system ("pause");
    return 0;
}



--------------------
PM MAIL WWW   Вверх
Graf_h
Дата 27.5.2009, 19:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 482
Регистрация: 18.10.2007
Где: г. Ровно, Украина

Репутация: 2
Всего: 5



azesmcar, 
Цитата(azesmcar @  27.5.2009,  19:12 Найти цитируемый пост)
я так понимаю о проблемах big-endian, little-endian пока думать рано?
 а что можете посоветовать. ведь не нга всех машинах числа представелнны одинаково. с этим уже сталкивался когда писал клиент на АС3, там числа представлени слева на право, а на сервере с права на лево, вот и приходилось переворачивать байты

Добавлено @ 19:27
mes, спасибо, уже в который раз выручаете, уже работаетsmile (memcpy)! это я что то тупилsmile 257  это и есть 0 0 1 1(..100000001)smile

Это сообщение отредактировал(а) Graf_h - 27.5.2009, 19:29


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
azesmcar
Дата 27.5.2009, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



Цитата(Graf_h @  27.5.2009,  19:26 Найти цитируемый пост)
вот и приходилось переворачивать байты


Цитата(Graf_h @  27.5.2009,  19:26 Найти цитируемый пост)
а что можете посоветовать

переворачивать байты
например договорится (условно smile ) с сервером что сервер всегда принимает к примеру в big-endian.
PM   Вверх
Graf_h
Дата 27.5.2009, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 482
Регистрация: 18.10.2007
Где: г. Ровно, Украина

Репутация: 2
Всего: 5



Цитата(azesmcar @  27.5.2009,  19:30 Найти цитируемый пост)
например договорится (условно  ) с сервером что сервер всегда принимает к примеру в big-endian.

а что будет если перенести сервер на другую машину?? не факт что представления чисел будут одинаковыми:(


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
azesmcar
Дата 27.5.2009, 19:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



Цитата(Graf_h @  27.5.2009,  19:32 Найти цитируемый пост)
а что будет если перенести сервер на другую машину?? не факт что представления чисел будут одинаковыми:( 

не важно, сервер всегда принимает в little-endian. Если ему нужно - пусть сам переворачивает.
псевдокод
Код

int v = receive();
if (i_am_little_endian())
{
   use_integer(v);
} else
{
   v = to_big_endian(v);
   use_integer(v);
}

PM   Вверх
mes
Дата 27.5.2009, 19:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



Цитата(Graf_h @  27.5.2009,  18:32 Найти цитируемый пост)
а что будет если перенести сервер на другую машину?? не факт что представления чисел будут одинаковыми:( 

Ну так договор то в силе. Сервер знает какое представление по договору и какое реальное - пусть и воспринимает (конвертирует) правильно. 


--------------------
PM MAIL WWW   Вверх
Graf_h
Дата 27.5.2009, 19:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 482
Регистрация: 18.10.2007
Где: г. Ровно, Украина

Репутация: 2
Всего: 5



Цитата(azesmcar @  27.5.2009,  19:35 Найти цитируемый пост)
не важно, сервер всегда принимает в little-endian. Если ему нужно - пусть сам переворачивает.

а как узнать как в машине представленны числа??


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
azesmcar
Дата 27.5.2009, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



Graf_h

Я же ссылку на вики прислал. Вы бы посмотрели.
особенно раздел Проблемы совместимости
цитирую код
Код

#include <stdio.h>
unsigned short x = 1; /* 0x0001 */
int main(void)
{
  printf("%s\n", *((unsigned char *) &x) == 0 ? "big-endian" : "little-endian");
  return 0;
}



Это сообщение отредактировал(а) azesmcar - 27.5.2009, 19:40
PM   Вверх
zim22
Дата 27.5.2009, 19:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 24
Всего: 69



Цитата(Graf_h @  27.5.2009,  19:32 Найти цитируемый пост)
? не факт что представления чисел будут одинаковыми:(

значит опрашивайте сервер на порядок байтов.



--------------------
PM MAIL   Вверх
fry
Дата 27.5.2009, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 257
Регистрация: 4.10.2006

Репутация: нет
Всего: 3



http://ru.wikipedia.org/wiki/%D0%9F%D0%BE%...%82%D0%BE%D0%B2

Почитай про сетевой порядок байт и конвертирование в оный

И не надо "договариваться" клиенту и серверу о порядке байтов.

Это сообщение отредактировал(а) fry - 27.5.2009, 19:48
PM MAIL   Вверх
Graf_h
Дата 28.5.2009, 10:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 482
Регистрация: 18.10.2007
Где: г. Ровно, Украина

Репутация: 2
Всего: 5



Всем спасибо, разобрался наконец smile.


--------------------
Иногда переменная - это просто переменная
PM MAIL ICQ   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0830 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.