عملیات بیتی

دانشنامه عمومی

در برنامه نویسی رایانه های دیجیتالی، عملیات بیتی ( به انگلیسی bitwise operation ) ، به انجام عملیات مختلف بر روی تک تک بیت های یک عدد دودویی یا هر الگوی بیتی دیگری گفته می شود. این کار به منظور محاسبه و مقایسه مقادیر مختلف انجام می شود و یک عملیات سریع است و مستقیماً توسط پردازنده پشتیبانی می شود. در یک پردازنده ساده و ارزان قیمت، به طور معمول، عملیات بیتی به شکل قابل ملاحظه ای سریعتر از تقسیم، چند برابر سریعتر از ضرب و گاهی به طرز چشمگیری سریعتر از جمع است. حتی در یک پردازنده مدرن و گرانقیمت که ضرب و جمع را به همان سرعت عملیات بیتی انجام می دهد، عملیات بیتی معمولاً منابع کمتری مصرف می کنند و استفاده از آن ها به صرفه تر است.
نفی بیتی یا مکمل، یک عملگر یگانی است که هر بیت را به صورت منطقی نقیض می کند و به این ترتیب مکمل یک آن مقدار بدست می آید. بیت هایی که ۰ هستند تبدیل به ۱ و بیت هایی که ۱ هستند تبدیل به صفر می شوند. برای مثال:
NOT 0111 ( decimal 7 ) = 1000 ( decimal 8 )
مکمل بیتی یک مقدار، با یکی کمتر از مکمل دو آن عدد برابر است:
عملگر AND بیتی، دو مقدار دودویی با طول مساوی دریافت کرده و بر روی هر جفت بیت متناظر، عملیات عطف منطقی را انجام می دهد. نتیجه وقتی ۱ می شود که اولین بیت و دومین بیت هر دو با هم ۱ باشند. در غیر این صورت نتیجه صفر است. در اینجا ضرب دو مقدار را با هم مرور می کنیم. ۱ * ۰ = ۰ و ۱ * ۱ = ۱:
0101 ( decimal 5 ) AND 0011 ( decimal 3 ) = 0001 ( decimal 1
با استفاده از عملیات AND بیتی، می توان تشخیص داد که آیا یک بیت خاص تنظیم شده است ( یعنی ۱ است ) یا نه ( یعنی ۰ است ) . برای مثال در الگوی ۰۰۱۱ ( عدد ۳ دودویی ) برای اینکه تشخیص دهیم آیا دومین بیت تنظیم شده است یا نه، آن را با الگویی که تنها دومین بیت آن ۱ است AND می کنیم.
0011 ( decimal 3 ) AND 0010 ( decimal 2 ) = 0010 ( decimal 2 ) از آنجا که نتیجه عملیات صفر نشد ( ۰۰۱۰ ) ، ما نتیجه می گیریم که دومین بیت در الگوی اصلی تنظیم شده است. ( ۱ است )
اگر نتیجه را در جایی ذخیره کنیم، می توانیم از طریق آن بیت مورد نظر را در یک ثبات پاک کنیم ( صفر کنیم ) مثلاً اگر الگوی ۰۱۱۰ ( عدد ۶ دودویی ) را با الگویی که تنها دومین بیت آن صفر است AND کنیم، می توانیم بیت دوم را پاک کنیم.
0110 ( decimal 6 ) AND 1101 ( decimal 13 ) = 0100 ( decimal 4 )
عکس عملیات بیتیعکس عملیات بیتیعکس عملیات بیتیعکس عملیات بیتی
این نوشته برگرفته از سایت ویکی پدیا می باشد، اگر نادرست یا توهین آمیز است، لطفا گزارش دهید: گزارش تخلف

پیشنهاد کاربران

بپرس