ಶನಿವಾರ, ಆಗಸ್ಟ್ 31, 2013

ಲಾಜಿಕ್ ಮತ್ತು ಲೆಕ್ಕ

ಟಿ. ಜಿ. ಶ್ರೀನಿಧಿ

ಜಾರ್ಜ್ ಬೂಲ್ ರೂಪಿಸಿದ ಬೂಲಿಯನ್ ತರ್ಕ ನಮಗೆ ಅನೇಕ ಬಗೆಯ ಲಾಜಿಕ್ ಗೇಟ್‌ಗಳನ್ನು ಪರಿಚಯಿಸುತ್ತದಲ್ಲ, ಅವು ಕಂಪ್ಯೂಟರ್ ಪ್ರಪಂಚದ ಆಧಾರಸ್ತಂಭಗಳಂತೆ ಕೆಲಸಮಾಡುತ್ತವೆ ಎನ್ನುವ ಹೇಳಿಕೆಯನ್ನು ನಾವು ಅನೇಕಬಾರಿ ಕೇಳುತ್ತೇವೆ. ಆದರೆ ಅದು ಸಾಧ್ಯವಾಗುವುದು ಹೇಗೆ?

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

ಆದರೆ ೧+೧ ಎಂಬ ಲೆಕ್ಕ ಬಂದಾಗ ಮಾತ್ರ ಕೊಂಚ ಸಮಸ್ಯೆಯಾಗುತ್ತದೆ. ೧+೧=೨ ಎನ್ನುವುದೇನೋ ಸರಿ. ಆದರೆ ದ್ವಿಮಾನ ಪದ್ಧತಿಯ ಲೆಕ್ಕಾಚಾರದಲ್ಲಿ ೨ ಎಂದರೆ ೧೦ ಆಗುತ್ತದಲ್ಲ, ಇದಕ್ಕೆ ಎಕ್ಸ್‌ಆರ್ ಗೇಟ್ ಸಾಕಾಗುವುದಿಲ್ಲ: ಅದು ೧+೧ ಎಂದಾಗ ೦ ಎಂದಷ್ಟೇ ಹೇಳಿ ಸುಮ್ಮನಾಗುತ್ತದೆ. ಅದರ ಹಿಂದಿನ ೧ ಇದೆಯಲ್ಲ (ದಶಕ, ಅಥವಾ 'ಕ್ಯಾರಿ ಬಿಟ್') ಅದನ್ನು ಪ್ರತಿನಿಧಿಸುವುದು ಹೇಗೆ?

ಉತ್ತರದಲ್ಲಿ ಒಂದು ಬಿಟ್ ಬದಲಿಗೆ ಎರಡು ಬಿಟ್‌ಗಳನ್ನು ಬಳಸಿದಾಗ ಈ ಸಮಸ್ಯೆಯನ್ನು ನಿವಾರಿಸಿಕೊಳ್ಳಬಹುದು. ಅಂದರೆ ೦+೦=೦೦, ೦+೧=೦೧, ೧+೦=೦೧ ಎನ್ನುತ್ತ ಹೋದಂತೆ ೧+೧=೧೦ ಎನ್ನುವುದೂ ಸಾಧ್ಯವಾಗುತ್ತದೆ.

ಆದರೆ ಈ ಕೆಲಸ ಎಕ್ಸ್‌ಆರ್ ಗೇಟ್‌ನಿಂದ ಆಗುವುದಿಲ್ಲವಲ್ಲ, ಅದಕ್ಕಾಗಿ ನಮ್ಮ ಸರ್ಕ್ಯೂಟನ್ನು ಕೊಂಚ ಬದಲಿಸಿಕೊಳ್ಳಬೇಕಾಗುತ್ತದೆ. ೧+೧ ಉದಾಹರಣೆಯನ್ನೇ ತೆಗೆದುಕೊಳ್ಳುವುದಾದರೆ ಆ ಸಮಸ್ಯೆಯನ್ನು ೧+೧=೦, ದಶಕ ೧ ಎಂದು ನೋಡಿದರೆ ಆಯಿತು; ೧+೧=೦ ಎನ್ನಲು ಎಕ್ಸ್‌ಆರ್, ೧+೧=೧ (ದಶಕ) ಎನ್ನಲು ಆಂಡ್ - ಈ ಎರಡು ಗೇಟ್‌ಗಳ ಜೋಡಣೆ ನಮ್ಮ ಲೆಕ್ಕಕ್ಕೆ ಉತ್ತರ ದೊರಕಿಸಿಕೊಡುತ್ತದೆ.

ಉತ್ತರ ಬೇಕಿದ್ದದ್ದು ೧+೧ ಎನ್ನುವ ಪ್ರಶ್ನೆಗಷ್ಟೇ ಆದರೆ ಬಹುಶಃ ನಮಗೆ ಕಂಪ್ಯೂಟರ್ ಬೇಕೇ ಆಗುತ್ತಿರಲಿಲ್ಲವೇನೋ. ಏಕೆಂದರೆ ಕಂಪ್ಯೂಟರ್ ಬಳಸಿ ಮಾಡಲಾಗುವ ಲೆಕ್ಕಾಚಾರ ಇದಕ್ಕಿಂತ ಅದೆಷ್ಟೋ ಪಟ್ಟು ಕ್ಲಿಷ್ಟವಾದದ್ದು.

ಹಾಗಾದರೆ ನಾವು ದೊಡ್ಡದೊಡ್ಡ ಸಂಖ್ಯೆಗಳನ್ನು ಕೂಡಿಸಬೇಕೆಂದರೆ ಈಗಷ್ಟೆ ರೂಪಿಸಿದ ಸರ್ಕ್ಯೂಟಿನ ಸಾಲುಸಾಲುಗಳನ್ನೇ ಸೃಷ್ಟಿಸಬೇಕಾಗುತ್ತದೆ. ಆಗ ನಮ್ಮ ಲೆಕ್ಕ ಒಂದು 'ಕ್ಯಾರಿ ಬಿಟ್' ಕೊಟ್ಟರಷ್ಟೇ ಸಾಲುವುದಿಲ್ಲ, ಹಿಂದಿನ ಹೆಜ್ಜೆಯಿಂದ ಬರುವ 'ಕ್ಯಾರಿ ಬಿಟ್' ಅನ್ನೂ ಸ್ವೀಕರಿಸಬೇಕಾಗುತ್ತದೆ. ಇದಕ್ಕಾಗಿ ಹಲವಾರು ಗೇಟ್‌ಗಳನ್ನು ಜೋಡಿಸಿ 'ಫುಲ್ ಆಡರ್'ಗಳೆಂಬ ಸರ್ಕ್ಯೂಟುಗಳನ್ನು ಸೃಷ್ಟಿಸಲಾಗುತ್ತದೆ.

ಅಂಕಿಗಳನ್ನು ಕೂಡಿಸುವ ವ್ಯವಸ್ಥೆಯಾದಂತೆಯೇ ಕಳೆಯುವ, ಗುಣಿಸುವ, ಭಾಗಿಸುವ ಸರ್ಕ್ಯೂಟುಗಳನ್ನೂ ರೂಪಿಸಿಕೊಳ್ಳುವುದು ಸಾಧ್ಯ. ಇಷ್ಟು ಕೆಲಸ ಆದಮೇಲೆ ಇನ್ನೇನು ಕ್ಯಾಲ್‌ಕ್ಯುಲೇಟರ್ ಸಿದ್ಧವಾದಂತೆಯೇ.

ಆದರೆ ಕಂಪ್ಯೂಟರ್ ಎನ್ನುವುದು ಬರಿಯ ಕ್ಯಾಲ್‌ಕ್ಯುಲೇಟರ್ ಅಷ್ಟೇ ಅಲ್ಲವಲ್ಲ, ಈಗಾಗಲೇ ಹೇಳಿದಂತೆ ಕಂಪ್ಯೂಟರಿನಲ್ಲಿ ಮಾಡುವ ಕೆಲಸ ೦+೧=೧ ಎನ್ನುವುದಕ್ಕಿಂತ ಅದೆಷ್ಟೋ ಪಟ್ಟು ಕ್ಲಿಷ್ಟವಾದದ್ದು. ಆ ಕೆಲಸವನ್ನೆಲ್ಲ ಮಾಡಲು ಲೆಕ್ಕಾಚಾರ ಮಾಡುವ ಸರ್ಕ್ಯೂಟುಗಳ ಜೊತೆಗೆ ಮಾಡಿದ ಕೆಲಸವನ್ನು ನೆನಪಿಟ್ಟುಕೊಳ್ಳುವ (ಮೆಮೊರಿ) ಸರ್ಕ್ಯೂಟುಗಳೂ ಬೇಕಾಗುತ್ತವೆ. ಕಂಪ್ಯೂಟರ್ ಬಳಸಿ ಮಾಡುತ್ತಿರುವ ಕೆಲಸಗಳನ್ನೆಲ್ಲ ಖಾಯಂ ಆಗಿ ಹಾರ್ಡ್‌ಡಿಸ್ಕ್‌ನಲ್ಲಿ ಉಳಿಸಿಡುವವರೆಗೆ ನೆನಪಿಟ್ಟುಕೊಳ್ಳಲು ರ್‍ಯಾಮ್ ಇರುತ್ತದಲ್ಲ, ಹಾಗೆ.

ಬೂಲಿಯನ್ ತರ್ಕದ ಗೇಟ್‌ಗಳು ಲೆಕ್ಕಾಚಾರ ಮಾಡುತ್ತವಲ್ಲ, ಮಾಡಿದ ಲೆಕ್ಕಾಚಾರವನ್ನು ನೆನಪಿಟ್ಟುಕೊಳ್ಳಲೂ ಅವನ್ನೇ ಬಳಸುವುದು ಸಾಧ್ಯವೇ? ಮುಂದಿನವಾರ ನೋಡೋಣ.

ಆಗಸ್ಟ್ ೩೦, ೨೦೧೩ರ ಉದಯವಾಣಿಯಲ್ಲಿ ಪ್ರಕಟವಾದ ಲೇಖನ

ಕಾಮೆಂಟ್‌ಗಳಿಲ್ಲ:

badge