Elias gamma coding
એલિયાસ કોડ અથવા એલિયાસ ગામા કોડ એ પીટર એલિયાસ દ્વારા વિકસાવવામાં આવેલ સાર્વત્રિક કોડ એન્કોડિંગ પોઝિટિવ પૂર્ણાંકો છે. તેનો ઉપયોગ સામાન્ય રીતે પૂર્ણાંકોને કોડિંગ કરતી વખતે થાય છે, જેમની ઉપરની સીમા અગાઉથી નક્કી કરી શકાતી નથી. એન્કોડિંગ સંખ્યા x ≤ 1 ને કોડ કરવા માટેઃ ચાલો તેમાં સમાવિષ્ટ 2 ની સૌથી વધુ ઘાત હોય, તેથી 2N ≤ x <2N + 1. શૂન્ય બિટ્સ લખો, પછી દ્વિસંગી નંબરનું દ્વિસંગી સ્વરૂપ ઉમેરો. સમાન પ્રક્રિયાને વ્યક્ત કરવાની સમકક્ષ રીતઃ યુનરીમાં એન્કોડ કરો; એટલે કે, શૂન્ય પછી એક. આ રજૂઆતમાં બાકીના દ્વિસંગી અંકો ઉમેરો. સંખ્યાને રજૂ કરવા માટે, એલિયાસ ગામા (γ) બિટ્સનો ઉપયોગ કરે છે. કોડ શરૂ થાય છે (કોડ માટે ગર્ભિત સંભાવના વિતરણ સ્પષ્ટતા માટે ઉમેરવામાં આવે છે): ડીકોડિંગ એલિયાસ ગામા-કોડેડ પૂર્ણાંકને ડીકોડ કરવા માટેઃ જ્યાં સુધી તમે પ્રથમ 1 સુધી ન પહોંચો ત્યાં સુધી પ્રવાહમાંથી 0 ને વાંચો અને ગણતરી કરો. શૂન્યની આ ગણતરીને N કહો. પૂર્ણાંકના પ્રથમ અંક સુધી પહોંચેલા અંકને ધ્યાનમાં લેતા, 2N ની કિંમત સાથે, પૂર્ણાંકના બાકીના N અંકોને વાંચો. ગામા કોડિંગનો ઉપયોગ એપ્લિકેશનોમાં થાય છે જ્યાં સૌથી મોટું એન્કોડેડ મૂલ્ય સમય પહેલા જાણીતું નથી, અથવા ડેટાને સંકુચિત કરવા માટે જેમાં નાના મૂલ્યો મોટા મૂલ્યો કરતાં વધુ વારંવાર હોય છે. ગામા કોડિંગ એ એલિયાસ ડેલ્ટા કોડમાં એક બિલ્ડિંગ બ્લોક છે. સામાન્યીકરણ ગામા કોડિંગ શૂન્ય અથવા નકારાત્મક પૂર્ણાંકોને કોડ કરતું નથી. શૂન્યને સંભાળવાની એક રીત એ છે કે કોડિંગ પહેલાં 1 ઉમેરવું અને પછી ડીકોડિંગ પછી 1 બાદબાકી કરવી. બીજી રીત એ છે કે દરેક બિન-શૂન્ય કોડને 1 સાથે ઉપસર્ગ કરવો અને પછી શૂન્ય કોડને એક જ 0 તરીકે જોડવો. તમામ પૂર્ણાંકોને કોડ કરવાની એક રીત એ છે કે કોડિંગ પહેલાં પૂર્ણાંકો (0, −1,1, −2,2, −3,3,.) થી (1,2,3,4,5,6,7,.) નું મેપિંગ કરીને બાયજેક્શન સેટ કરવું. સોફ્ટવેરમાં, બિન-નકારાત્મક ઇનપુટ્સને વિષમ આઉટપુટમાં અને નકારાત્મક ઇનપુટ્સને સમ આઉટપુટમાં મેપિંગ કરીને આ સૌથી સરળતાથી કરવામાં આવે છે, તેથી ઓછામાં ઓછું નોંધપાત્ર બીટ ઊંધી નિશાની બીટ બની જાય છેઃ એક્સપોનેન્શિયલ-ગોલોમ્બ કોડિંગ ગામા કોડને "સપાટ" પાવર-લૉ વિતરણ સાથે પૂર્ણાંકોમાં સામાન્ય બનાવે છે, જેમ કે ગોલોમ્બ કોડિંગ યુનરી કોડને સામાન્ય બનાવે છે. તેમાં સંખ્યાને હકારાત્મક વિભાજક દ્વારા વિભાજીત કરવાનો સમાવેશ થાય છે, સામાન્ય રીતે 2 ની ઘાત, ભાગાકાર કરતાં એક વધુ માટે ગામા કોડ લખવો, અને બાકીનાને સામાન્ય દ્વિસંગી કોડમાં લખવું. એલિયાસ ડેલ્ટા (δ) કોડિંગ એલિયાસ ઓમેગા (ω) કોડિંગ પોઝિટ (નંબર ફોર્મેટ) સંદર્ભો વધુ વાંચન એન્ટ્રોપી કોડિંગ આંકડાકીય પ્રણાલીઓ ઉદાહરણ સી કોડ સાથેના લેખો