#!/bin/sh # # dconvert - convert digits # # (c)2003 by mathias gumz # extract(){ sed 1,/^LOOKUP/d $0 | gunzip -c $TABLE | \ cut -d ' ' -f $1,$2 | \ if (( $1 > $2 )); then sed -e 's/^\(.*\) \(.*\)$/\2 \1/g' else sed '/*/p' fi | \ grep "^$3 " | \ cut -d ' ' -f 2 } out="" case "$1" in -h | --help | help ) cat << EOF ABOUT dconv.sh - small digit converter for small systems USAGE dconv.sh [-h] sbase2dbase DIGITS BASES b - binary o - octal d - decimal h - hexadezimal EXAMPLES dconv.sh h2d FF -> 255 dconv.sh h2b FF -> 11111111 AUTHOR mathias gumz EOF exit 0;; -t | --table | table ) sed 1,/^LOOKUP/d $0 | gunzip -c;; b2o)out=$(extract 1 2 $2);; b2d)out=$(extract 1 3 $2);; b2h)out=$(extract 1 4 $2);; o2b)out=$(extract 2 1 $2);; o2d)out=$(extract 2 3 $2);; o2h)out=$(extract 2 4 $2);; d2b)out=$(extract 3 1 $2);; d2o)out=$(extract 3 2 $2);; d2h)out=$(extract 3 4 $2);; h2b)out=$(extract 4 1 $2);; h2o)out=$(extract 4 2 $2);; h2d)out=$(extract 4 3 $2);; esac echo "$out" exit 0 LOOKUP }y?ntable5Y:  .OOM_pp 9(ggG?|dQ fO1 IeKm;cbR \)N3hnО gW4h)Q;   2ZB!ZHiSM5!ZXnњp~J;z%fC1VBj@ y![BO 5 __!Z畣aCV/́!Z$|iMqKK _Zz SxGճ!1V/)DR+WD 5o!ZݐZyyaHB!5 k`1(yBulMY B`ya+DkZ( X΃5ul ƚ ٟBRfxz ǬO _!ZcJ1B(?1[ic"DEH y-J!ZkUXpmK)JLF[B`0XI8v ѪhW n!Zp 䱐h!/dWYx, W1«,B-ʚ9h5[(&DB@kB !ZJ뫯QGF(@Q)DFWFl#[V@kFib~e B<`aHlbX{\h!rMѴZԫ̣X1z3J6E{Y1nm0ūvbR zqc~x'^7]ڈ ?(^E^.WM^ʼxog1I1ͯ"b`FfGS^WEyO[^O07++Foz[_ʺ1}1l'o 镯5PMYZa&F{  5Mo5SͬD%/h`V:1?<Ǖhw4ۺuox;nbꯔ!|=s0 ==kʺ^wpU}{[;co[^O0=+׾>s0k{,bYSp&F{=7ϙp \b2mxW+e zu ћ맟_z:ׯ8"Fmjʺ?,韛C~W5!?/ Zb88¯Su+X-F9`a_==~tX!"6ez.bs]SraM!M{0Cvϔuǫ}`W}FWʺ|F߷3~y3~MѷW0e!0mOxOW}?5e*Y&F,z07|?CY}W7˟%/,v0HWʺU u +Fox~1jf{ks0OD<[UoMYo=!Fonxgʺwnxw0nxO1zw{_nxo1zwxc~x?!o|;䗃1wȯѫC~5e*wȯC~=C~Cooooc