Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Перевод hex to binary / 25 сообщений из 37, страница 1 из 2
24.06.2015, 20:22
    #38992017
Jurijus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Программа переводит hex to binary, и сохраняет их, в тесте работы программы получилась 280КБ/s, файл был размером 4.1mb и он экспортировался в binary за 15 секунд.
...
Рейтинг: 0 / 0
24.06.2015, 20:27
    #38992022
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Jurijusфайл был размером 4.1mb и он экспортировался в binary за 15 секунд.
Ну и тормозно же...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
24.06.2015, 20:36
    #38992030
Jurijus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Dimitry SibiryakovJurijusфайл был размером 4.1Мб и он экспортировался в binary за 15 секунд.
Ну и тормозно же...

Ну я незнаю это медленно или быстро, сохранился файл в binary теперь 33.4MБ
А размер считающего файла 12.4 в Hex, сам в обычном виде 4.1 МБ
...
Рейтинг: 0 / 0
24.06.2015, 21:07
    #38992042
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Jurijusв тесте работы программы получилась 280КБ/s
Хреновая программа, пиши другую. Раз в 100 легко ускориться и это не предел. Предел скорость чтения с диска, т.е. от 90 мб/сек.
...
Рейтинг: 0 / 0
24.06.2015, 21:15
    #38992048
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
JurijusНу я незнаю это медленно или быстро, сохранился файл в binary теперь 33.4MБ
А размер считающего файла 12.4 в Hex, сам в обычном виде 4.1 МБ
Hex - шестнадцатеричная запись, т.е. 1 байт = 4 бита. binary это 1 байт = 8 бит. В итоге должно было получится 2,05 Мб, но не как не 33.
...
Рейтинг: 0 / 0
24.06.2015, 21:57
    #38992064
Jurijus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Dima TJurijusНу я незнаю это медленно или быстро, сохранился файл в binary теперь 33.4MБ
А размер считающего файла 12.4 в Hex, сам в обычном виде 4.1 МБ
Hex - шестнадцатеричная запись, т.е. 1 байт = 4 бита. binary это 1 байт = 8 бит. В итоге должно было получится 2,05 Мб, но не как не 33.
Итак файл был 4.1-4.2MB и в binary он вдруг встал 2.05 так почему файл уменшился
...
Рейтинг: 0 / 0
24.06.2015, 22:15
    #38992072
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
JurijusDima Tпропущено...

Hex - шестнадцатеричная запись, т.е. 1 байт = 4 бита. binary это 1 байт = 8 бит. В итоге должно было получится 2,05 Мб, но не как не 33.
Итак файл был 4.1-4.2MB и в binary он вдруг встал 2.05 так почему файл уменшился
Непонятно объяснил? Книжки читай, лекции не пропускай, преподавателя спроси.
...
Рейтинг: 0 / 0
24.06.2015, 22:27
    #38992080
Jurijus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Dima TJurijusНу я незнаю это медленно или быстро, сохранился файл в binary теперь 33.4MБ
А размер считающего файла 12.4 в Hex, сам в обычном виде 4.1 МБ
Hex - шестнадцатеричная запись, т.е. 1 байт = 4 бита. binary это 1 байт = 8 бит. В итоге должно было получится 2,05 Мб, но не как не 33.
hex один байт шестанеричной записи будет 2 знака плюс пропуск получится 3 знака:
0123456789ABCDEF.
...
Рейтинг: 0 / 0
24.06.2015, 22:32
    #38992083
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Jurijushex один байт шестанеричной записи будет 2 знака плюс пропуск получится 3 знака:f ghj,tk а пробел то зачем?
...
Рейтинг: 0 / 0
23.07.2015, 20:43
    #39014925
Jurijus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Сделал без пробела и считывание по два байта с символами 0,1,2 и 3 массива уже 620 кб/с.
...
Рейтинг: 0 / 0
23.07.2015, 20:45
    #39014926
Jurijus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Сделал без пробела и считывание по два байта с символами 0,1,2 и 3 массива уже 620 КБ/с
...
Рейтинг: 0 / 0
23.07.2015, 21:50
    #39014950
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Периодически в форуме собираются люди которые меряют бенчмарками
свои hdd, memory, cache разных уровней.

Новый сезон открыт.

Welcome!
...
Рейтинг: 0 / 0
24.07.2015, 05:23
    #39015012
m_Sla
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
mayton,
задача до конца непонятна. Да и решение простое, скучная задача.
...
Рейтинг: 0 / 0
24.07.2015, 05:24
    #39015013
m_Sla
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
JurijusСделал без пробела и считывание по два байта с символами 0,1,2 и 3 массива уже 620 КБ/скод давай, посмотрим
...
Рейтинг: 0 / 0
24.07.2015, 18:43
    #39015741
Jurijus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Теперь 722КБ/с Но больше если беру читать байт скорость не увеличивается.
...
Рейтинг: 0 / 0
24.07.2015, 18:49
    #39015746
Jurijus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
m_SlaJurijusСделал без пробела и считывание по два байта с символами 0,1,2 и 3 массива уже 620 КБ/скод давай, посмотрим
там массивы 3 байта читаю их собераю соединяю и кладу,
Скорость уже 772 КБ/с.
...
Рейтинг: 0 / 0
24.07.2015, 19:00
    #39015751
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Jurijusтам массивы 3 байта читаю их собераю соединяю и кладу,
А теперь доведи размер массивов до 32 килобайт.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
25.07.2015, 14:21
    #39015964
Jurijus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Dimitry SibiryakovJurijusтам массивы 3 байта читаю их собераю соединяю и кладу,
А теперь доведи размер массивов до 32 килобайт.

Байты увеличивал скорость не увеличевается, а еще дальше на оборот уменьшается,
очистка тоже больше нечего не миняет, скорость пока 772 KB/s

вот код:
Код: 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.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
247.
248.
249.
250.
251.
252.
253.
254.
255.
256.
257.
258.
259.
260.
261.
262.
263.
264.
265.
266.
267.
268.
269.
270.
271.
272.
273.
274.
275.
276.
277.
278.
279.
280.
281.
282.
283.
284.
285.
286.
287.
288.
289.
290.
291.
292.
293.
294.
295.
296.
297.
298.
299.
300.
301.
302.
303.
304.
305.
306.
....
struct documenta{
char buffer[2];
char buffer2[2];
char buffer3[2];
char buffer4[2];
char s1[13];
string bin;
} save [199998],ss[999];
....
int de=0;
int l=0,j=0;
long t1 = clock();
int rt=1;
long byte=0,speed;
int y=0;
int fg=0;
ofstream hexbinary;
char s1[240];
char oldname0[5] = "0000";
char oldname1[5] = "0001";
char oldname2[5] = "0010";
char oldname3[5] = "0011";
char oldname4[5] = "0100";
char oldname5[5] = "0101";
char oldname6[5] = "0110";
char oldname7[5] = "0111";
char oldname8[5] = "1000";
char oldname9[5] = "1001";
char oldnameA[5] = "1010";
char oldnameB[5] = "1011";
char oldnameC[5] = "1100";
char oldnameD[5] = "1101";
char oldnameE[5] = "1110";
char oldnameF[5] = "1111";
int d=-1,r=-1,sd=0;
		  fill_n(s1,240, '\0' );
ifstream file("rez.txt");
   while (!file.eof())
        {
	     for(r=0; r<199998; r++)
			   {
				if(!file.eof())
				{
          fill_n( ss[0].s1,7, '\0' );	
  file.read( ss[0].s1,6);//nazvanie "file" v chitke zabisit
  		 string sgim1(ss[0].s1);
			if(!file.eof())
			{byte++;}
							   fg=0;
							for(y=0;y<3;y++)
					{
	   ss[y].buffer[0]=ss[0].s1[fg]; ss[y].buffer[1]='\0';ss[y].buffer[2]='\0';fg++;
	   ss[y].buffer2[0]=ss[0].s1[fg]; ss[y].buffer2[1]='\0';ss[y].buffer2[2]='\0'; fg++;
							}
			  				for(y=0;y<3;y++)
					{
						if(stricmp("0",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname0,240);
					}	  
						}

					  else  if(stricmp("1",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname1,240);
					}	  
						}

					 else  if(stricmp("2",ss[y].buffer)==0)
						{
						 		  	   
					{	     
				     strncat(s1,oldname2,240);
					}	
 
						}
						 else  if(stricmp("3",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname3,240);
					}	 
						}
						 else  if(stricmp("4",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname4,240);
					}	 
						}
					  		 else  if(stricmp("5",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname5,240);
					}	 
						}
							 else  if(stricmp("6",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname6,240);
					}	  
						}
								 else  if(stricmp("7",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname7,240);
					}	
						}
									else  if(stricmp("8",ss[y].buffer)==0)
						{ 	   
					{	     
				     strncat(s1,oldname8,240);
					}	 
						}
					    else  if(stricmp("9",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname9,240);
					}	
						}
						else  if(stricmp("a",ss[y].buffer)==0 || stricmp("A",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldnameA,240);
					}	
						}
						else  if(stricmp("b",ss[y].buffer)==0 || stricmp("B",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldnameB,240);
					}	
						}
						else  if (stricmp("c",ss[y].buffer)==0 || stricmp("C",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldnameC,240);
					}	
						}
						 else  if (stricmp("d",ss[y].buffer)==0 || stricmp("D",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldnameD,240);
					}	 
						}
						 else  if (stricmp("e",ss[y].buffer)==0 || stricmp("E",ss[y].buffer)==0)
						{	  	   
					{	     
				     strncat(s1,oldnameE,240);
					}	 
						}
						else  if (stricmp("f",ss[y].buffer)==0 || stricmp("F",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldnameF,240);
					}	
 
						}
					   if(stricmp("0",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname0,240);
					}	 
						}

					  else  if(stricmp("1",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname1,240);
					}	  
						}

					 else  if(stricmp("2",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname2,240);
					}	 
						}
						 else  if(stricmp("3",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname3,240);
					}	 
						}
						 else  if(stricmp("4",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname4,240);
					}	  
						}
					  		 else  if(stricmp("5",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname5,240);
					}	  
						}
							 else  if(stricmp("6",ss[y].buffer2)==0)
						{  	   
					{	     
				     strncat(s1,oldname6,240);
					}	  
						}
								 else  if(stricmp("7",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname7,240);
					}	  
						}
									else  if(stricmp("8",ss[y].buffer2)==0)
						{  	   
					{	     
				     strncat(s1,oldname8,240);
					}	  
						}
					    else  if(stricmp("9",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname9,240);
					}	 
						}
						else  if(stricmp("a",ss[y].buffer2)==0 || stricmp("A",ss[y].buffer2)==0)
						{  	   
					{	     
				     strncat(s1,oldnameA,240);
					}	  
						}
						else  if(stricmp("b",ss[y].buffer2)==0 || stricmp("B",ss[y].buffer2)==0)
						{  	   
					{	     
				     strncat(s1,oldnameB,240);
					}	 
						}
						else  if (stricmp("c",ss[y].buffer2)==0 || stricmp("C",ss[y].buffer2)==0)
						{  	   
					{	     
				     strncat(s1,oldnameC,240);
					}	  
						}
						 else  if (stricmp("d",ss[y].buffer2)==0 || stricmp("D",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldnameD,240);
					}	  
						}
						 else  if (stricmp("e",ss[y].buffer2)==0 || stricmp("E",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldnameE,240);
					}	  
						}
						else  if (stricmp("f",ss[y].buffer2)==0 || stricmp("F",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldnameF,240);
					}	 
						}
					   }
						de=de+1;
						if(de==10 || file.eof())//1, blocka soedeniti, 30 byte
						{de=0;
						save[r].bin+=s1;
						fill_n( s1,240, '\0' );
						}
					  }
					}//here save 199998 clean

 j=j+1;
    if(j==18) //50MB
{
 if(rt==1)
 {rt=2;
  hexbinary.open("hexbinary.txt",ios::out);
 }
  for(r=0; r<199998; r++)
  {
	  for(r=0; r<199998; r++)
       hexbinary<<save[r].bin;
  }
 for(r=0; r<199998; r++)
save[r].bin="";	
j=0;
}// if(j==18)
				   }//here while close
				   file.close();
 if(rt==1)
 {rt=2;
  hexbinary.open("hexbinary.txt",ios::out);
 }
    for(r=0; r<199998; r++)
	{
	  	  for(r=0; r<199998; r++)
       hexbinary<<save[r].bin;
	}
 hexbinary.close();
  for(r=0; r<199998; r++)
save[r].bin="";	
j=0;
long t2 = clock();
speed=(((w/1)/(t2 - t1))*1000)/1024;
    cout << w/1 << endl;
    cout << "Done!" << endl; 
    cout << "Time: " << (t2 - t1)/1000/60 << " minut."<< endl;
    cout << "Time: " << (t2 - t1)/1000<< " seconds."<< endl;
    cout << "Time: " << (t2 - t1) << " millisends "<<endl;
	cout << "Speed: " << speed << " KB/s "<<endl;
	system("pause");
...
Рейтинг: 0 / 0
25.07.2015, 15:37
    #39015981
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Jurijus
Код: sql
1.
 file.read( ss[0].s1,6);//nazvanie "file" v chitke zabisit



Вот тут замени 6 на 6*999 и вынеси этот вызов за пределы цикла.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
27.07.2015, 06:46
    #39016283
m_Sla
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Код: 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.
#include <iostream>

using namespace std;


int table_hex_to_bin[256];

//////////////////////////////////////
char * hex_to_bin(char *hex)
{
    static int result[3];

    result[0] = table_hex_to_bin[ *hex ];
    result[1] = table_hex_to_bin[ *(hex+1) ];
    result[2]=0;

    return (char *)result;
}
//////////////////////////////////////

int main()
{
    table_hex_to_bin['0'] = '0000';
    table_hex_to_bin['1'] = '1000';
    table_hex_to_bin['2'] = '0100';
    table_hex_to_bin['3'] = '1100';
    table_hex_to_bin['4'] = '0010';
    table_hex_to_bin['5'] = '1010';
    table_hex_to_bin['6'] = '0110';
    table_hex_to_bin['7'] = '1110';
    table_hex_to_bin['8'] = '0001';
    table_hex_to_bin['9'] = '1001';
    table_hex_to_bin['a'] = '0101';
    table_hex_to_bin['b'] = '1101';
    table_hex_to_bin['c'] = '0011';
    table_hex_to_bin['d'] = '1011';
    table_hex_to_bin['e'] = '0111';
    table_hex_to_bin['f'] = '1111';
    table_hex_to_bin['A'] = '0101';
    table_hex_to_bin['B'] = '1101';
    table_hex_to_bin['C'] = '0011';
    table_hex_to_bin['D'] = '1011';
    table_hex_to_bin['E'] = '0111';
    table_hex_to_bin['F'] = '1111';

    cout << hex_to_bin("00") << endl;
    cout << hex_to_bin("01") << endl;
    cout << hex_to_bin("0f") << endl;
    cout << hex_to_bin("11") << endl;
    cout << hex_to_bin("f0") << endl;
    cout << hex_to_bin("fe") << endl;

}

...
Рейтинг: 0 / 0
27.07.2015, 07:43
    #39016295
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
JurijusDimitry Sibiryakovпропущено...

А теперь доведи размер массивов до 32 килобайт.

Байты увеличивал скорость не увеличевается, а еще дальше на оборот уменьшается,
очистка тоже больше нечего не миняет, скорость пока 772 KB/s

вот код:
Код: 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.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
247.
248.
249.
250.
251.
252.
253.
254.
255.
256.
257.
258.
259.
260.
261.
262.
263.
264.
265.
266.
267.
268.
269.
270.
271.
272.
273.
274.
275.
276.
277.
278.
279.
280.
281.
282.
283.
284.
285.
286.
287.
288.
289.
290.
291.
292.
293.
294.
295.
296.
297.
298.
299.
300.
301.
302.
303.
304.
305.
306.
....
struct documenta{
char buffer[2];
char buffer2[2];
char buffer3[2];
char buffer4[2];
char s1[13];
string bin;
} save [199998],ss[999];
....
int de=0;
int l=0,j=0;
long t1 = clock();
int rt=1;
long byte=0,speed;
int y=0;
int fg=0;
ofstream hexbinary;
char s1[240];
char oldname0[5] = "0000";
char oldname1[5] = "0001";
char oldname2[5] = "0010";
char oldname3[5] = "0011";
char oldname4[5] = "0100";
char oldname5[5] = "0101";
char oldname6[5] = "0110";
char oldname7[5] = "0111";
char oldname8[5] = "1000";
char oldname9[5] = "1001";
char oldnameA[5] = "1010";
char oldnameB[5] = "1011";
char oldnameC[5] = "1100";
char oldnameD[5] = "1101";
char oldnameE[5] = "1110";
char oldnameF[5] = "1111";
int d=-1,r=-1,sd=0;
		  fill_n(s1,240, '\0' );
ifstream file("rez.txt");
   while (!file.eof())
        {
	     for(r=0; r<199998; r++)
			   {
				if(!file.eof())
				{
          fill_n( ss[0].s1,7, '\0' );	
  file.read( ss[0].s1,6);//nazvanie "file" v chitke zabisit
  		 string sgim1(ss[0].s1);
			if(!file.eof())
			{byte++;}
							   fg=0;
							for(y=0;y<3;y++)
					{
	   ss[y].buffer[0]=ss[0].s1[fg]; ss[y].buffer[1]='\0';ss[y].buffer[2]='\0';fg++;
	   ss[y].buffer2[0]=ss[0].s1[fg]; ss[y].buffer2[1]='\0';ss[y].buffer2[2]='\0'; fg++;
							}
			  				for(y=0;y<3;y++)
					{
						if(stricmp("0",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname0,240);
					}	  
						}

					  else  if(stricmp("1",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname1,240);
					}	  
						}

					 else  if(stricmp("2",ss[y].buffer)==0)
						{
						 		  	   
					{	     
				     strncat(s1,oldname2,240);
					}	
 
						}
						 else  if(stricmp("3",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname3,240);
					}	 
						}
						 else  if(stricmp("4",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname4,240);
					}	 
						}
					  		 else  if(stricmp("5",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname5,240);
					}	 
						}
							 else  if(stricmp("6",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname6,240);
					}	  
						}
								 else  if(stricmp("7",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname7,240);
					}	
						}
									else  if(stricmp("8",ss[y].buffer)==0)
						{ 	   
					{	     
				     strncat(s1,oldname8,240);
					}	 
						}
					    else  if(stricmp("9",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldname9,240);
					}	
						}
						else  if(stricmp("a",ss[y].buffer)==0 || stricmp("A",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldnameA,240);
					}	
						}
						else  if(stricmp("b",ss[y].buffer)==0 || stricmp("B",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldnameB,240);
					}	
						}
						else  if (stricmp("c",ss[y].buffer)==0 || stricmp("C",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldnameC,240);
					}	
						}
						 else  if (stricmp("d",ss[y].buffer)==0 || stricmp("D",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldnameD,240);
					}	 
						}
						 else  if (stricmp("e",ss[y].buffer)==0 || stricmp("E",ss[y].buffer)==0)
						{	  	   
					{	     
				     strncat(s1,oldnameE,240);
					}	 
						}
						else  if (stricmp("f",ss[y].buffer)==0 || stricmp("F",ss[y].buffer)==0)
						{  	   
					{	     
				     strncat(s1,oldnameF,240);
					}	
 
						}
					   if(stricmp("0",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname0,240);
					}	 
						}

					  else  if(stricmp("1",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname1,240);
					}	  
						}

					 else  if(stricmp("2",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname2,240);
					}	 
						}
						 else  if(stricmp("3",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname3,240);
					}	 
						}
						 else  if(stricmp("4",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname4,240);
					}	  
						}
					  		 else  if(stricmp("5",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname5,240);
					}	  
						}
							 else  if(stricmp("6",ss[y].buffer2)==0)
						{  	   
					{	     
				     strncat(s1,oldname6,240);
					}	  
						}
								 else  if(stricmp("7",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname7,240);
					}	  
						}
									else  if(stricmp("8",ss[y].buffer2)==0)
						{  	   
					{	     
				     strncat(s1,oldname8,240);
					}	  
						}
					    else  if(stricmp("9",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldname9,240);
					}	 
						}
						else  if(stricmp("a",ss[y].buffer2)==0 || stricmp("A",ss[y].buffer2)==0)
						{  	   
					{	     
				     strncat(s1,oldnameA,240);
					}	  
						}
						else  if(stricmp("b",ss[y].buffer2)==0 || stricmp("B",ss[y].buffer2)==0)
						{  	   
					{	     
				     strncat(s1,oldnameB,240);
					}	 
						}
						else  if (stricmp("c",ss[y].buffer2)==0 || stricmp("C",ss[y].buffer2)==0)
						{  	   
					{	     
				     strncat(s1,oldnameC,240);
					}	  
						}
						 else  if (stricmp("d",ss[y].buffer2)==0 || stricmp("D",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldnameD,240);
					}	  
						}
						 else  if (stricmp("e",ss[y].buffer2)==0 || stricmp("E",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldnameE,240);
					}	  
						}
						else  if (stricmp("f",ss[y].buffer2)==0 || stricmp("F",ss[y].buffer2)==0)
						{	  	   
					{	     
				     strncat(s1,oldnameF,240);
					}	 
						}
					   }
						de=de+1;
						if(de==10 || file.eof())//1, blocka soedeniti, 30 byte
						{de=0;
						save[r].bin+=s1;
						fill_n( s1,240, '\0' );
						}
					  }
					}//here save 199998 clean

 j=j+1;
    if(j==18) //50MB
{
 if(rt==1)
 {rt=2;
  hexbinary.open("hexbinary.txt",ios::out);
 }
  for(r=0; r<199998; r++)
  {
	  for(r=0; r<199998; r++)
       hexbinary<<save[r].bin;
  }
 for(r=0; r<199998; r++)
save[r].bin="";	
j=0;
}// if(j==18)
				   }//here while close
				   file.close();
 if(rt==1)
 {rt=2;
  hexbinary.open("hexbinary.txt",ios::out);
 }
    for(r=0; r<199998; r++)
	{
	  	  for(r=0; r<199998; r++)
       hexbinary<<save[r].bin;
	}
 hexbinary.close();
  for(r=0; r<199998; r++)
save[r].bin="";	
j=0;
long t2 = clock();
speed=(((w/1)/(t2 - t1))*1000)/1024;
    cout << w/1 << endl;
    cout << "Done!" << endl; 
    cout << "Time: " << (t2 - t1)/1000/60 << " minut."<< endl;
    cout << "Time: " << (t2 - t1)/1000<< " seconds."<< endl;
    cout << "Time: " << (t2 - t1) << " millisends "<<endl;
	cout << "Speed: " << speed << " KB/s "<<endl;
	system("pause");



Ребята, спасибо за хороший пример говнокода!
Теперь буду всем показывать, если спросят, что такое "говнокод", вместо определения.
...
Рейтинг: 0 / 0
27.07.2015, 07:47
    #39016297
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Большая просьба к автору топика: приведи пожалуйста код полностью, без пропусков, в компилируемом виде.
...
Рейтинг: 0 / 0
27.07.2015, 18:38
    #39017070
Jurijus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
MasterZiv,
там место каторое ты видишь 012345689ABCDEF перевода
...
Рейтинг: 0 / 0
27.07.2015, 18:40
    #39017071
Jurijus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
MasterZivБольшая просьба к автору топика: приведи пожалуйста код полностью, без пропусков, в компилируемом виде.
до этого экспорт.
...
Рейтинг: 0 / 0
27.07.2015, 18:45
    #39017074
Jurijus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод hex to binary
Dimitry SibiryakovJurijus
Код: sql
1.
 file.read( ss[0].s1,6);//nazvanie "file" v chitke zabisit



Вот тут замени 6 на 6*999 и вынеси этот вызов за пределы цикла.

К садежелению это не менят скорость.
Скорость уже 861 КБ/с могли кот и каридоры.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Перевод hex to binary / 25 сообщений из 37, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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