рдХрдиреНрд╡рд░реНрдЯ рд╣реЗрдХреНрд╕-> рдбрд┐рдХ - рд╕реБрдВрджрд░ рд╕рдорд╛рдзрд╛рди рдХреА рддрд▓рд╛рд╢ рдореЗрдВ

рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдПрдХ рд╡рд┐рдЪрд╛рд░ рдПрдХ рд╣реА рдирд╕ рдореЗрдВ рдХреБрдЫ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрдкрдиреНрди рд╣реБрдЖред рдПрдХ рд╣реЗрдХреНрд╕рд╛рдбреЗрд╕рд┐рдорд▓ рдкреНрд░рдгрд╛рд▓реА рд╕реЗ рдПрдХ рджрд╢рдорд▓рд╡ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдПрдХ рдкреВрд░реНрдгрд╛рдВрдХ рдореЗрдВ рдмрджрд▓рдиреЗ рдХрд╛ рдХрд╛рд░реНрдп рдЙрдкрдпреБрдХреНрдд рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рдерд╛: рдмрд╣реБрдд рдмреЛрдЭрд┐рд▓ рдирд╣реАрдВ, рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╕реНрдкрд╖реНрдЯ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдФрд░, рд╢рд╛рдпрдж, рдХрдИ рдЧреИрд░-рд╕реНрдкрд╖реНрдЯ рд╡рд╛рд▓реЗ, рдФрд░ рд╕рдордЭрдиреЗ рдпреЛрдЧреНрдпред







рд╣реЗрдХреНрд╕рд╛рдбреЗрд╕рд┐рдорд▓ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдПрдХ рдЧреИрд░-рдирдХрд╛рд░рд╛рддреНрдордХ рдкреВрд░реНрдгрд╛рдВрдХ рдпреБрдХреНрдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдПред рдЕрдВрдХ 0..9A..F рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ (рдЕрдХреНрд╖рд░ рдХреЗрд╡рд▓ рдмрдбрд╝реЗ рд╣реИрдВ), рдпрд╣ рдЧрд╛рд░рдВрдЯреА рджреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рдХреЛрдИ рд╡рд░реНрдг рдирд╣реАрдВ рд╣реИрдВ рдЬреЛ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЕрдВрдХ рдирд╣реАрдВ рд╣реИрдВред рдЖрдкрдХреЛ рдРрд╕реА рд╕рдВрдЦреНрдпрд╛ рдХреА рджрд╢рдорд▓рд╡ рд╕рдВрдХреЗрддрди рдпреБрдХреНрдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрдирдкреБрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рд▓рдВрдмрд╛рдИ 100,000 рдмрд╛рдЗрдЯреНрд╕ рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реИред



рдХрд┐рд╕реА рднреА рднрд╛рд╖рд╛ рдореЗрдВ рд╕рдорд╛рдзрд╛рди рд▓рд┐рдЦреЗрдВ - рд╕рдмрд╕реЗ рд╕реБрдВрджрд░, рд╕рдмрд╕реЗ рдЫреЛрдЯрд╛, рд╕рдмрд╕реЗ рдкреНрд░рднрд╛рд╡реА ... рдПрдХ рдЯреНрдпреВрд░рд┐рдВрдЧ рдорд╢реАрди рдкрд░ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП, рдореИрдВ рдХреЗрд╡рд▓ рдЕрдХреНрд╖рд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВ "рдЕрдВрддрд░рд┐рдХреНрд╖, 0, 1" (рдирдП рд▓реЛрдЧреЛрдВ рдХреЛ рджрд░реНрдЬ рди рдХрд░реЗрдВ), рдФрд░ рдЪрд╛рд░ рдмрд┐рдЯреНрд╕ (рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдпрд╛ рдирд╣реАрдВ) рдХреЗ рд╕рд╛рде рдЗрдирдкреБрдЯ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдирдВрдмрд░ рд▓рд┐рдЦреЗрдВ - рдЕрдкрдиреЗ рд╡рд┐рд╡реЗрдХ рдкрд░)ред рдмреНрд░реЗрдирдлрдХ рдкрд░, рдЗрдирдкреБрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧ рджрд░реНрдЬ рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдкреНрд░рд┐рдВрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред



рдпреБрдкреАрдбреАред рдмрд┐рд▓реНрдЯ-рдЗрди рдпрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА BigNum рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдмреЗрд╢рдХ, рдЕрдЪреНрдЫрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рднреА рддрд░рд╣ рдмрд╣реБрдд рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рд╣реИред рдЪрд▓реЛ рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рдХрд░рддреЗ рд╣реИрдВ!



рдмреАрдЬ рдХреЗ рд▓рд┐рдП - C # рдореЗрдВ рдПрдХ рд╕рдорд╛рдзрд╛рди (рдЬрд┐рд╕реЗ рди рддреЛ рд╕реБрдВрджрд░ рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рди рдЫреЛрдЯрд╛, рди рд╣реА рдкреНрд░рднрд╛рд╡реА):



         рд╕реНрдерд┐рд░ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╕реНрдЯреНрд░рд┐рдВрдЧ Hex2Dec (рд╕реНрдЯреНрд░рд┐рдВрдЧ x) {int l = x.Length;  int ll = l + l / 4 + 3;  sbyte [] m = new sbyte [ll];  int i = l;  foreach (char c in x) m [- i] = (sbyte) (c <'A'; c-'0 ': c-'A' + 10);  int lk = ll;  рдЬрдмрдХрд┐ (l> 0) {int k = 0, l1 = 0;  рдЬрдмрдХрд┐ (l> 0) {k = (k << 4) + m [- l];  m [l] = (sbyte) (k / 10);  if (l1 == 0 && k> = 10) l1 = l + 1;  k% = 10;  } m [- lk] = (sbyte) (k + 48);  l l1 рд╣реИ;  } рд╕реНрдЯреНрд░рд┐рдВрдЧ рд░реЗрд╕;  рдирд┐рд╢реНрдЪрд┐рдд (sbyte * c = m) {res = new string (c, lk, ll-lk);  } рд╡рд╛рдкрд╕ Res;  } 



All Articles