समस्या
C भाषा का उपयोग करके किसी संख्या के बाएँ, दाएँ पाली और पूरक को दिखाने का सरल कार्यक्रम क्या है?
समाधान
बायां शिफ़्ट
यदि किसी चर के मान को एक बार बाएँ-शिफ्ट किया जाता है, तो उसका मान दुगना हो जाता है।
उदाहरण के लिए, a =10, फिर a<<1 =20
राइट शिफ्ट
यदि किसी चर का मान एक बार दायाँ-शिफ्ट किया जाता है, तो उसका मान मूल मान का आधा हो जाता है।
उदाहरण के लिए, a =10, फिर a>>1 =5
उदाहरण
शिफ्ट संचालन के लिए सी कार्यक्रम निम्नलिखित है -
#include<stdio.h> main (){ int a=9; printf("Rightshift of a = %d\n",a>>1);//4// printf("Leftshift of a = %d\n",a<<1);//18// printf("Compliment of a = %d\n",~a);//-[9+1]// printf("Rightshift by 2 of a = %d\n",a>>2);//2// printf("Leftshift by 2 of a = %d\n",a<<2);//36// }में से 2 से लेफ्टशिफ्ट
आउटपुट
जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है -
Rightshift of a = 4 Leftshift of a = 18 Compliment of a = -10 Rightshift by 2 of a = 2 Leftshift by 2 of a = 36