ಟಿ. ಜಿ. ಶ್ರೀನಿಧಿ
ಜಾರ್ಜ್ ಬೂಲ್ ರೂಪಿಸಿದ ಬೂಲಿಯನ್ ತರ್ಕ ನಮಗೆ ಅನೇಕ ಬಗೆಯ ಲಾಜಿಕ್ ಗೇಟ್ಗಳನ್ನು ಪರಿಚಯಿಸುತ್ತದಲ್ಲ, ಅವು ಕಂಪ್ಯೂಟರ್ ಪ್ರಪಂಚದ ಆಧಾರಸ್ತಂಭಗಳಂತೆ ಕೆಲಸಮಾಡುತ್ತವೆ ಎನ್ನುವ ಹೇಳಿಕೆಯನ್ನು ನಾವು ಅನೇಕಬಾರಿ ಕೇಳುತ್ತೇವೆ. ಆದರೆ ಅದು ಸಾಧ್ಯವಾಗುವುದು ಹೇಗೆ?
ಉದಾಹರಣೆಗೆ ಎರಡು ಅಂಕಿಗಳನ್ನು ನಾವೀಗ ಕೂಡಬೇಕಿದೆ ಎಂದುಕೊಳ್ಳೋಣ. ಇದಕ್ಕೆ ಬೇಕಾದ ಸರ್ಕ್ಯೂಟನ್ನು ರೂಪಿಸುವಲ್ಲಿ ಲಾಜಿಕ್ ಗೇಟ್ಗಳು ನಮಗೆ ಖಂಡಿತಾ ಸಹಾಯಮಾಡಬಲ್ಲವು. ೦+೦=೦, ೦+೧=೧, ೧+೦=೧,... ಈ ಉತ್ತರಗಳನ್ನು ಎಕ್ಸ್ಆರ್ (XOR) ಗೇಟ್ ಕೊಡಬಲ್ಲದು ಎಂದು ನಮಗೆ ಗೊತ್ತೇ ಇದೆಯಲ್ಲ!
ಆದರೆ ೧+೧ ಎಂಬ ಲೆಕ್ಕ ಬಂದಾಗ ಮಾತ್ರ ಕೊಂಚ ಸಮಸ್ಯೆಯಾಗುತ್ತದೆ. ೧+೧=೨ ಎನ್ನುವುದೇನೋ ಸರಿ. ಆದರೆ ದ್ವಿಮಾನ ಪದ್ಧತಿಯ ಲೆಕ್ಕಾಚಾರದಲ್ಲಿ ೨ ಎಂದರೆ ೧೦ ಆಗುತ್ತದಲ್ಲ, ಇದಕ್ಕೆ ಎಕ್ಸ್ಆರ್ ಗೇಟ್ ಸಾಕಾಗುವುದಿಲ್ಲ: ಅದು ೧+೧ ಎಂದಾಗ ೦ ಎಂದಷ್ಟೇ ಹೇಳಿ ಸುಮ್ಮನಾಗುತ್ತದೆ. ಅದರ ಹಿಂದಿನ ೧ ಇದೆಯಲ್ಲ (ದಶಕ, ಅಥವಾ 'ಕ್ಯಾರಿ ಬಿಟ್') ಅದನ್ನು ಪ್ರತಿನಿಧಿಸುವುದು ಹೇಗೆ?
ಜಾರ್ಜ್ ಬೂಲ್ ರೂಪಿಸಿದ ಬೂಲಿಯನ್ ತರ್ಕ ನಮಗೆ ಅನೇಕ ಬಗೆಯ ಲಾಜಿಕ್ ಗೇಟ್ಗಳನ್ನು ಪರಿಚಯಿಸುತ್ತದಲ್ಲ, ಅವು ಕಂಪ್ಯೂಟರ್ ಪ್ರಪಂಚದ ಆಧಾರಸ್ತಂಭಗಳಂತೆ ಕೆಲಸಮಾಡುತ್ತವೆ ಎನ್ನುವ ಹೇಳಿಕೆಯನ್ನು ನಾವು ಅನೇಕಬಾರಿ ಕೇಳುತ್ತೇವೆ. ಆದರೆ ಅದು ಸಾಧ್ಯವಾಗುವುದು ಹೇಗೆ?
ಉದಾಹರಣೆಗೆ ಎರಡು ಅಂಕಿಗಳನ್ನು ನಾವೀಗ ಕೂಡಬೇಕಿದೆ ಎಂದುಕೊಳ್ಳೋಣ. ಇದಕ್ಕೆ ಬೇಕಾದ ಸರ್ಕ್ಯೂಟನ್ನು ರೂಪಿಸುವಲ್ಲಿ ಲಾಜಿಕ್ ಗೇಟ್ಗಳು ನಮಗೆ ಖಂಡಿತಾ ಸಹಾಯಮಾಡಬಲ್ಲವು. ೦+೦=೦, ೦+೧=೧, ೧+೦=೧,... ಈ ಉತ್ತರಗಳನ್ನು ಎಕ್ಸ್ಆರ್ (XOR) ಗೇಟ್ ಕೊಡಬಲ್ಲದು ಎಂದು ನಮಗೆ ಗೊತ್ತೇ ಇದೆಯಲ್ಲ!
ಆದರೆ ೧+೧ ಎಂಬ ಲೆಕ್ಕ ಬಂದಾಗ ಮಾತ್ರ ಕೊಂಚ ಸಮಸ್ಯೆಯಾಗುತ್ತದೆ. ೧+೧=೨ ಎನ್ನುವುದೇನೋ ಸರಿ. ಆದರೆ ದ್ವಿಮಾನ ಪದ್ಧತಿಯ ಲೆಕ್ಕಾಚಾರದಲ್ಲಿ ೨ ಎಂದರೆ ೧೦ ಆಗುತ್ತದಲ್ಲ, ಇದಕ್ಕೆ ಎಕ್ಸ್ಆರ್ ಗೇಟ್ ಸಾಕಾಗುವುದಿಲ್ಲ: ಅದು ೧+೧ ಎಂದಾಗ ೦ ಎಂದಷ್ಟೇ ಹೇಳಿ ಸುಮ್ಮನಾಗುತ್ತದೆ. ಅದರ ಹಿಂದಿನ ೧ ಇದೆಯಲ್ಲ (ದಶಕ, ಅಥವಾ 'ಕ್ಯಾರಿ ಬಿಟ್') ಅದನ್ನು ಪ್ರತಿನಿಧಿಸುವುದು ಹೇಗೆ?