From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Thu, 5 Aug 2010 01:18:18 +0400 From: Alexey Tourbin To: devel@lists.altlinux.org Message-ID: <20100804211817.GB10145@altlinux.org> Mail-Followup-To: devel@lists.altlinux.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="hHWLQfXTYDoKhP50" Content-Disposition: inline Subject: [devel] base2 <-> base62 X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 Aug 2010 21:18:22 -0000 Archived-At: List-Archive: List-Post: --hHWLQfXTYDoKhP50 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: quoted-printable =EC=CF=CD=C1=CC =C7=CF=CC=CF=D7=D5 =CE=C5=D3=CB=CF=CC=D8=CB=CF =DE=C1=D3=CF= =D7. =EB=D4=CF =DA=CE=C1=C5=D4 =D4=CF=CD=D5 =D0=D2=D1=CE=C9=CB. =E5=D3=D4=D8 =D3=CC=CF=D7=CF =D7 =C1=CC=C6=C1=D7=C9=D4=C5 {0,1} - =D4.=C5. = =D0=CF=D3=CC=C5=C4=CF=D7=C1=D4=C5=CC=D8=CE=CF=D3=D4=D8 =CE=D5=CC=C5=CA =C9 = =C5=C4=C9=CE=C9=C3. =E8=CF=DE=C5=D4=D3=D1 =D0=D2=C5=C4=D3=D4=C1=D7=C9=D4=D8 =DC=D4=CF =D3=CC=CF= =D7=CF =D7 =C1=CC=C6=C1=D7=C9=D4=C5 {0..9,a..z,A..Z} (base62) =C4=CC=D1 =DC=CB=CF=CE=CF=CD=C9=C9 =C2=C9=D4=CF=D7. =F4=CF =C5=D3=D4=D8 = =D0=CF=CC=D5=DE=C9=D4=D8 =C2=CF=CC=C5=C5 =CB=CF=D2=CF=D4=CB=CF=C5 =D0=D2=C5= =C4=D3=D4=C1=D7=CC=C5=CE=C9=C5 =DC=D4=CF=CA =D0=CF=D3=CC=C5=C4=CF=D7=C1=D4=C5=CC=D8=CE=CF=D3=D4=C9 =D7 =D7= =C9=C4=C5 =C2=D5=CB=D7 =C9 =C3=C9=C6=D2. =E9 =CE=D5=D6=CE=CF =D5=CD=C5=D4= =D8 =CB=CF=CE=D7=C5=D2=D4=C9=D2=CF=D7=C1=D4=D8 =CE=C1=DA=C1=C4. =F0=CF=CE=D1=D4=CE=CF, =DE=D4=CF =C5=D3=CC=C9 =C9=DA =D0=CF=D3=CC=C5=C4=CF= =D7=C1=D4=C5=CC=D8=CE=CF=D3=D4=C9 =D3=C4=C5=CC=C1=D4=D8 =D0=D2=CF=D3=D4=CF = =DE=C9=D3=CC=CF, =D4=CF =DA=C1=C4=C1=DE=C1 =D3=D7=CF=C4=C9=D4=D3=D1 =CB =D0=D2=C5=C4=D3=D4=C1=D7=CC=C5=CE=C9=C0 =DE=C9= =D3=CC=C1 =D7 =D2=C1=DA=CC=C9=DE=CE=D9=C8 =D3=C9=D3=D4=C5=CD=C1=C8 =D3=DE= =C9=D3=CC=C5=CE=C9=D1. =EE=CF =D0=CF=D3=CC=C5=C4=CF=D7=C1=D4=C5=CC=D8=CE=CF=D3=D4=D8 =D3=CC=C9=DB=CB=CF= =CD =C4=CC=C9=CE=CE=C1=D1, =D7 =CD=C1=DB=C9=CE=CE=CF=C5 =DE=C9=D3=CC=CF =CF= =CE=C1 =CE=C5 =D0=CF=CD=C5=D3=D4=C9=D4=D3=D1, =C1 =D3=D7=D1=DA=D9=D7=C1=D4=D8=D3=D1 =D3 GPM =CE=C5=CF=C8=CF=D4=C1. =F7 =D3=D7=D1=DA=C9 =D3 =DE=C5=CD =D7=CF=D0=D2=CF=D3, =CE=C5=D4 =CC=C9 =CB= =C1=CB=CF=C7=CF-=CE=C9=C2=D5=C4=D8 =C2=CF=CC=C5=C5 =D0=D2=CF=D3=D4=CF=C7=CF= =D3=D0=CF=D3=CF=C2=C1. =ED=CE=C5 =CB=C1=DA=C1=CC=CF=D3=D8 =CB=C1=CB-=D4=CF =D3 =CF=D3=D4=C1=D4=CB= =C1=CD=C9 =CD=CF=D6=CE=CF =D3=C4=C5=CC=C1=D4=D8. =EE=CF =D2=C1=D3=CB=CF=C4= =C9=D2=CF=D7=C1=D4=D8 =CF=D3=D4=C1=D4=CB=C9 =D0=CF=CB=C1 =CE=C5 =D0=CF=CC=D5=DE=C9=CC=CF=D3=D8.-) // =E4=C1=CC=C5=C5 =D0=CF=D3=CC=C5=C4=CF=D7=C1=D4=C5=CC=D8=CE=CF=D3=D4= =D8 =CE=D5=CC=C5=CA =C9 =C5=C4=C9=CE=C9=C3 =C8=D2=C1=CE=C9=D4=D3=D1 =D7 { b= itc, bitv[] }. // base62 void put_digit(int c) { if (c < 10) putchar(c + '0'); else if (c < 36) putchar(c - 10 + 'a'); else if (c < 62) putchar(c - 36 + 'A'); } v =3D 0; for (i =3D 0; i < bitc; i++) { v =3D (v << 1) | bitv[i]; while (v >=3D 62) { int q =3D v / 62; int r =3D v % 62; put_digit(r); v =3D q; } } if (v) put_digit(v); putchar('\n'); --hHWLQfXTYDoKhP50 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) iEYEARECAAYFAkxZ2RkACgkQfBKgtDjnu0Y2zACgqNENDFwn0PSSxqopn2OaMLYt K/kAoIwF9yfJMSabk0pIh7mWxUCpZ3dB =9zYc -----END PGP SIGNATURE----- --hHWLQfXTYDoKhP50--