powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / как соединить быстро 8 символов вместе?
14 сообщений из 14, страница 1 из 1
как соединить быстро 8 символов вместе?
    #38799994
Jurijus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Прочитаете 8 символов из текста заминити их на другие случаные символы,
Соединить их вместе и положите их в блокнот, со скорость 7.5 Мб/с.
как соединить быстро 8 символов вместе?
String
bin=bin+buffer;
не походит слишком медленно,

strcpy(s3,a.bufferd);
strcat(s3,b.bufferd);
Со string тоже не походит еще медленнее.
...
Рейтинг: 0 / 0
как соединить быстро 8 символов вместе?
    #38799999
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jurijus,

юноша, что это за бред?
Сессию сдаешь?
...
Рейтинг: 0 / 0
как соединить быстро 8 символов вместе?
    #38800012
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jurijus, обманываешь! Как ты скорость мерял?
...
Рейтинг: 0 / 0
как соединить быстро 8 символов вместе?
    #38800044
petalvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JurijusПрочитаете 8 символов из текста заминити их на другие случаные символы,
В итоге получается 8 случайных символов.
Значит, исходные можно вовсе не читать.
Профит!
...
Рейтинг: 0 / 0
как соединить быстро 8 символов вместе?
    #38800083
Jurijus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это для моего архиватора,
надо прочитать текст по байтно заминить его на биты из словоря максимально быстро соединить их и сохронить в блокнот.

Когда пробывал прочитать 999000 бит е соединить их и положить их в блокнот,
То ушло 1.7секунды 10мб.
...
Рейтинг: 0 / 0
как соединить быстро 8 символов вместе?
    #38800110
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv,

Просто автор очередного алгоритма архивации, совместной разработки Скольково и Алексея Бабушкина.
...
Рейтинг: 0 / 0
как соединить быстро 8 символов вместе?
    #38800111
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jurijus,

Профилируй свой код.
...
Рейтинг: 0 / 0
как соединить быстро 8 символов вместе?
    #38800115
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JurijusЭто для моего архиватора,
надо прочитать текст по байтно заминить его на биты из словоря максимально быстро соединить их и сохронить в блокнот.

Когда пробывал прочитать 999000 бит е соединить их и положить их в блокнот,
То ушло 1.7секунды 10мб.

Ты бэ штоле рускей йазыг пад учил сначала, прежде архиватараф писать! Школа пьятый клас!
...
Рейтинг: 0 / 0
как соединить быстро 8 символов вместе?
    #38800154
no comment
...
Рейтинг: 0 / 0
как соединить быстро 8 символов вместе?
    #38800177
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может быть он не из России, потому делает такие ошибки. Объясните нормально что вам нужно. Ваша задача выглядит тривиально, для человека разрабатывающего архиватор
...
Рейтинг: 0 / 0
как соединить быстро 8 символов вместе?
    #38801158
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryМожет быть он не из России, потому делает такие ошибки. Объясните нормально что вам нужно. Ваша задача выглядит тривиально, для человека разрабатывающего архиватор
1. На алгоритмах архивации дальше LRE и LZW не уходил. Но, и для LRE и для LZW нафиг не нужно, что то по 8 символов считывать и соединять.

LRE - работает по символьно
LZW - вообще-то работает побитно.

И в том и в другом случае, проблема со скоростью скорее всего совсем в других местах.

note: если уж до ассемблера разбираться, скорее всего проблема будет порезать считанное слово обратно на символы. Т.к. читать по байтно(символьно) из памяти - слишком дорогое удовольствие. Там пойдет полно промахов и исключений кэша. AFAIK. Но читать пословно и потом резать - тоже задача еще та, лично я корректно (быстро) делать не умею. Наверное нужно сдвигом и битовыми операциями + как-то разворачивать цикл. AFAIK. Сталкивался, но не делал (и так скрость была достаточная, хотя явно можно было на пару порядков быстрее, Intel VTune от исключений кэша весь красный был)

2. А вот это место "....и положите их в блокнот" ставит вообще в ступор, что же пытается делать автор

IMHO
...
Рейтинг: 0 / 0
как соединить быстро 8 символов вместе?
    #38801194
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обычно архивация не применяется для 8 символов. Речь может идти об обратной метрике.
Произвольное количество символов (пока хватает вещественной точности) отображается
в точку на отрезке [0..1] и эта точка кодируется как 8-байтное вещественное число
в поток. (Арифметическое сжатие).

Но вообще да... согласен. Слово "блокнот" ставит в тупик. В стеке программирования
блокнот никак не танцует... Мдя... Глюк в ТЗ или школьник не понял что от него
хотел препод.
...
Рейтинг: 0 / 0
как соединить быстро 8 символов вместе?
    #38802836
Magabyte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
JurijusПрочитаете 8 символов из текста заминити их на другие случаные символы,
Соединить их вместе и положите их в блокнот, со скорость 7.5 Мб/с.
как соединить быстро 8 символов вместе?
String
bin=bin+buffer;
не походит слишком медленно,

strcpy(s3,a.bufferd);
strcat(s3,b.bufferd);
Со string тоже не походит еще медленнее.

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

Когда пробывал прочитать 999000 бит е соединить их и положить их в блокнот,
То ушло 1.7секунды 10мб.

То ты пишешь о символах, то пишешь о байтах, то о битах. Сначала разберись в терминах.
1 символ != 1byte != 1bit
...
Рейтинг: 0 / 0
как соединить быстро 8 символов вместе?
    #38861975
Jurijus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Magabyte,
Нет чувак это совершенно новый алгоритм и мой.
Да, там по-битное, блочное сжатие.
Я уже решил месяц тому назад всем спасибо, и нимало кода уже написал

Здесь только буфферезация:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
#include <string>
#include <fstream>
#include <iostream>
#include <time.h>

using namespace std;

struct document
{
char maska[256];
char buffer[4];
string bin;
} save [199998],ss[30];

int main()
{ 
	int r, l;
	int j=0;
//char holder=' ';
long t1 = clock();
 ifstream file( "1.txt" );
   while (!file.eof())
           {	
                 for(r=0; r<199998; r++)
			   {
	      for(r=0; r<199998; r++)
			   {
				   for(l=0; l<30; l++)	//30 potshto s nulia shitaem
				   {   
          fill_n( ss[l].buffer,4, '\0' );	
  file.read( ss[l].buffer,3);//nazvanie "file" v chitke zabisit
  		 string sgi1(ss[l].buffer);
					//here 6 make 
				   } //3*30 90 ok 1
				   for(l=0; l<30; l++)
			save[r].bin+=ss[l].buffer;
				}
          }
	   //here save 199998 clean
	  j=j+1;
    if(j==5000) //199998*5000=999,990,000
{

 ofstream save16("numberts.txt",ios::out);
{
  for(r=0; r<199998; r++)
  {
	  for(r=0; r<199998; r++)
       save16<<save[r].bin;
  }
}
save16.close();

 for(r=0; r<199998; r++)
save[r].bin=" ";	
j=0;
}
  }
 file.close();
 ofstream save15("numberts.txt",ios::out);
{
  for(r=0; r<199998; r++)
  {
	  for(r=0; r<199998; r++)
       save15<<save[r].bin;
  }
}
save15.close();
long t2 = clock();
    cout << "Done!" << endl; 
    cout << "Time: " << (t2 - t1)/1000/60 << " minut."<< endl;
    cout << "Time: " << (t2 - t1)/1000<< " seconds."<< endl;
    cout << "Time: " << (t2 - t1) << " millisends."<< endl;
system("pause");
return 0;
}
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / как соединить быстро 8 символов вместе?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]