Elias gamma coding
ಎಲಿಯಾಸ್ ಕೋಡ್ ಅಥವಾ ಎಲಿಯಾಸ್ ಗಾಮಾ ಕೋಡ್ ಎಂಬುದು ಪೀಟರ್ ಎಲಿಯಾಸ್ ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ ಸಾರ್ವತ್ರಿಕ ಕೋಡ್ ಎನ್ಕೋಡಿಂಗ್ ಧನಾತ್ಮಕ ಪೂರ್ಣಾಂಕಗಳಾಗಿವೆ. ಮೇಲಿನ-ಮಿತಿಯನ್ನು ಮೊದಲೇ ನಿರ್ಧರಿಸಲಾಗದ ಪೂರ್ಣಾಂಕಗಳನ್ನು ಕೋಡಿಂಗ್ ಮಾಡುವಾಗ ಇದನ್ನು ಸಾಮಾನ್ಯವಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ. ಎನ್ಕೋಡಿಂಗ್ ಒಂದು ಸಂಖ್ಯೆಯನ್ನು ಕೋಡ್ ಮಾಡಲು x ≤ 1: ಅದು ಒಳಗೊಂಡಿರುವ 2 ರ ಅತ್ಯುನ್ನತ ಶಕ್ತಿಯಾಗಿರಲಿ, ಆದ್ದರಿಂದ 2N ≤ x <2N + 1. ಶೂನ್ಯ ಬಿಟ್ಗಳನ್ನು ಬರೆಯಿರಿ, ನಂತರ ಬೈನರಿ ಸಂಖ್ಯೆಯ ಬೈನರಿ ರೂಪವನ್ನು ಸೇರಿಸಿ. ಅದೇ ಪ್ರಕ್ರಿಯೆಯನ್ನು ವ್ಯಕ್ತಪಡಿಸಲು ಸಮಾನವಾದ ವಿಧಾನಃ ಯೂನಾರಿಯಲ್ಲಿ ಎನ್ಕೋಡ್ ಮಾಡಿ; ಅಂದರೆ, ಶೂನ್ಯಗಳ ನಂತರ ಒಂದು. ಈ ಪ್ರಾತಿನಿಧ್ಯಕ್ಕೆ ಉಳಿದ ದ್ವಿಮಾನ ಅಂಕೆಗಳನ್ನು ಸೇರಿಸಿ. ಒಂದು ಸಂಖ್ಯೆಯನ್ನು ಪ್ರತಿನಿಧಿಸಲು, ಎಲಿಯಾಸ್ ಗಾಮಾ (γ) ಬಿಟ್ಗಳನ್ನು ಬಳಸುತ್ತದೆ. ಕೋಡ್ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ (ಕೋಡ್ಗೆ ಸೂಚಿಸಲಾದ ಸಂಭವನೀಯತೆಯ ವಿತರಣೆಯನ್ನು ಸ್ಪಷ್ಟತೆಗಾಗಿ ಸೇರಿಸಲಾಗುತ್ತದೆ): ಡಿಕೋಡಿಂಗ್ ಎಲಿಯಾಸ್ ಗಾಮಾ-ಕೋಡೆಡ್ ಪೂರ್ಣಾಂಕವನ್ನು ಡಿಕೋಡ್ ಮಾಡಲುಃ ನೀವು ಮೊದಲ 1 ಅನ್ನು ತಲುಪುವವರೆಗೆ ಸ್ಟ್ರೀಮ್ನಿಂದ 0 ಗಳನ್ನು ಓದಿ ಎಣಿಸಿ. ಈ ಶೂನ್ಯಗಳ ಎಣಿಕೆಯನ್ನು ಎನ್ ಎಂದು ಕರೆಯಿರಿ. ಪೂರ್ಣಾಂಕದ ಮೊದಲ ಅಂಕಿಯಾಗಿ ತಲುಪಿದ ಒಂದನ್ನು ಪರಿಗಣಿಸಿ, 2 ಎನ್ ಮೌಲ್ಯದೊಂದಿಗೆ, ಪೂರ್ಣಾಂಕದ ಉಳಿದ ಎನ್ ಅಂಕೆಗಳನ್ನು ಓದಿ. ಗಾಮಾ ಕೋಡಿಂಗ್ ಅನ್ನು ಅತಿದೊಡ್ಡ ಎನ್ಕೋಡ್ ಮಾಡಲಾದ ಮೌಲ್ಯವು ಸಮಯಕ್ಕಿಂತ ಮುಂಚಿತವಾಗಿ ತಿಳಿದಿಲ್ಲದ ಅಪ್ಲಿಕೇಶನ್ಗಳಲ್ಲಿ ಬಳಸಲಾಗುತ್ತದೆ, ಅಥವಾ ದೊಡ್ಡ ಮೌಲ್ಯಗಳಿಗಿಂತ ಸಣ್ಣ ಮೌಲ್ಯಗಳು ಹೆಚ್ಚಾಗಿ ಕಂಡುಬರುವ ಡೇಟಾವನ್ನು ಸಂಕುಚಿತಗೊಳಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ. ಗಾಮಾ ಕೋಡಿಂಗ್ ಎಲಿಯಾಸ್ ಡೆಲ್ಟಾ ಕೋಡ್ನಲ್ಲಿ ಒಂದು ಬಿಲ್ಡಿಂಗ್ ಬ್ಲಾಕ್ ಆಗಿದೆ. ಸಾಮಾನ್ಯೀಕರಣಗಳು ಗಾಮಾ ಕೋಡಿಂಗ್ ಶೂನ್ಯ ಅಥವಾ ಋಣಾತ್ಮಕ ಪೂರ್ಣಾಂಕಗಳನ್ನು ಸಂಕೇತಿಸುವುದಿಲ್ಲ. ಶೂನ್ಯವನ್ನು ನಿರ್ವಹಿಸುವ ಒಂದು ವಿಧಾನವೆಂದರೆ ಕೋಡಿಂಗ್ ಮಾಡುವ ಮೊದಲು 1 ಅನ್ನು ಸೇರಿಸುವುದು ಮತ್ತು ನಂತರ ಡಿಕೋಡಿಂಗ್ ಮಾಡಿದ ನಂತರ 1 ಅನ್ನು ಕಳೆಯುವುದು. ಮತ್ತೊಂದು ಮಾರ್ಗವೆಂದರೆ ಪ್ರತಿ ಶೂನ್ಯವಲ್ಲದ ಕೋಡ್ ಅನ್ನು 1 ರೊಂದಿಗೆ ಪೂರ್ವಪ್ರತ್ಯಯ ಮಾಡುವುದು ಮತ್ತು ನಂತರ ಶೂನ್ಯ ಕೋಡ್ ಅನ್ನು ಒಂದೇ 0 ಎಂದು ಜೋಡಿಸುವುದು. ಎಲ್ಲಾ ಪೂರ್ಣಾಂಕಗಳನ್ನು ಕೋಡ್ ಮಾಡುವ ಒಂದು ಮಾರ್ಗವೆಂದರೆ ಬೈಜೆಕ್ಷನ್ ಅನ್ನು ಹೊಂದಿಸುವುದು, ಕೋಡಿಂಗ್ ಮಾಡುವ ಮೊದಲು ಪೂರ್ಣಾಂಕಗಳನ್ನು (0, −1,1, −2,2, −3,3,.) ನಿಂದ (1,2,3,4,5,6,7,.) ಮ್ಯಾಪಿಂಗ್ ಮಾಡುವುದು. ಸಾಫ್ಟ್ವೇರ್ನಲ್ಲಿ, ಋಣಾತ್ಮಕವಲ್ಲದ ಇನ್ಪುಟ್ಗಳನ್ನು ಬೆಸ ಔಟ್ಪುಟ್ಗಳಿಗೆ ಮತ್ತು ಋಣಾತ್ಮಕ ಇನ್ಪುಟ್ಗಳನ್ನು ಸಮ ಔಟ್ಪುಟ್ಗಳಿಗೆ ಮ್ಯಾಪ್ ಮಾಡುವ ಮೂಲಕ ಇದನ್ನು ಅತ್ಯಂತ ಸುಲಭವಾಗಿ ಮಾಡಲಾಗುತ್ತದೆ, ಆದ್ದರಿಂದ ಕನಿಷ್ಠ-ಮಹತ್ವದ ಬಿಟ್ ತಲೆಕೆಳಗಾದ ಸೈನ್ ಬಿಟ್ ಆಗುತ್ತದೆಃ ಎಕ್ಸ್ಪೊನೆನ್ಷಿಯಲ್-ಗೊಲೊಂಬ್ ಕೋಡಿಂಗ್ ಗಾಮಾ ಕೋಡ್ ಅನ್ನು "ಚಪ್ಪಟೆಯಾದ" ಪವರ್-ಲಾ ವಿತರಣೆಯೊಂದಿಗೆ ಪೂರ್ಣಾಂಕಗಳಿಗೆ ಸಾಮಾನ್ಯಗೊಳಿಸುತ್ತದೆ, ಗೊಲೊಂಬ್ ಕೋಡಿಂಗ್ ಯೂನರಿ ಕೋಡ್ ಅನ್ನು ಸಾಮಾನ್ಯಗೊಳಿಸುತ್ತದೆ. ಇದು ಸಂಖ್ಯೆಯನ್ನು ಧನಾತ್ಮಕ ಭಾಜಕದಿಂದ ಭಾಗಿಸುವುದನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ, ಸಾಮಾನ್ಯವಾಗಿ 2 ರ ಶಕ್ತಿಯು, ಅನುಪಾತಕ್ಕಿಂತ ಹೆಚ್ಚಿನದಕ್ಕೆ ಗಾಮಾ ಕೋಡ್ ಅನ್ನು ಬರೆಯುವುದು ಮತ್ತು ಉಳಿದದ್ದನ್ನು ಸಾಮಾನ್ಯ ಬೈನರಿ ಕೋಡ್ನಲ್ಲಿ ಬರೆಯುವುದು. ಎಲಿಯಾಸ್ ಡೆಲ್ಟಾ (δ) ಕೋಡಿಂಗ್ ಎಲಿಯಾಸ್ ಒಮೆಗಾ (ω) ಕೋಡಿಂಗ್ ಪಾಸಿಟ್ (ಸಂಖ್ಯೆ ಸ್ವರೂಪ) ಉಲ್ಲೇಖಗಳನ್ನು ಸಹ ನೋಡಿ.