بایگانی برچسب‌ها : بیت

عملگر بیتی Bitwise Operator

عملگر بیتی یا Bitwise Operator چیست؟

عملگر بیتی (Bitwise Operator) به عملگرهایی گفته می‌شود که عملی را روی یک یا چند عدد باینری در سطح بیت هایشان انجام می‌دهند. این اعمال را عملیات بیتی (Bitwise Operation) می‌نامند و از آنجایی که بسیار ساده هستند توسط پردازنده به صورت مستقیم نیز پشتیبانی می‌شوند. عملیات بیتی معمولا برای انجام اعمالی نظیر مقایسه، محاسبه و … مورد استفاده قرار می‌گیرد.

عملگرهای بیتی متداول

عملگرهای بیتی رایجی که در اغلب زبان های برنامه نویسی (و نه تمامی آن‌ها) پشتیبانی می‌شود شامل عملگرهای NOT (نقیض یا نفی)، AND (و)، OR (یا) و XOR (یای مانعه الجمع، یای انحصاری) بیتی و همچنین تعدادی از شیفت‌های بیتی پرکاربرد می‌باشد.

عملگر NOT بیتی، نوعی عملگر بیتی یکانی (تک عملوندی) است که تمام بیت‌های عملوند خود را تغییر می‌دهد. به عبارت بهتر، این عملگر، عمل نفی منطقی را روی تک تک بیت‌های عملوند انجام می‌دهد (بیت‌هایی که صفر هستند را به یک و بیت‌هایی که یک هستند را به صفر تبدیل می‌کند). یکی از کاربردهای این عملگر، محاسبه مکمل یک (1’s Complement) اعداد باینری می‌باشد.

عملگرهای AND و OR و XOR، عملگرهای باینری (دوتایی یا دو عملوندی) هستند. عملوندهایی که توسط این عملگرها بر روی آن‌ها عملیات بیتی انجام می‌شود می‌بایست دارای طول (تعداد بیت) یکسان باشند چرا که این اعمال روی بیت‌های متناظر عملوندها انجام می‌شود. توجه داشته باشید در فرم متدول نمایش باینری، سمت چپ‌ترین موقعیت بیتی را با ارزش ترین (یا مهم‌ترین) بیت (Most significant bit یا MSB) و سمت راست‌ترین موقعیت بیتی را کم ارزش ترین (یا کم اهمیت ترین) بیت (Least significant bit یا LSB) می‌نامند.

عملگر AND بیتی، عمل AND (و) منطقی را روی هر جفت از بیت‌های متناظر در عملوندهایش انجام می‌دهد. در صورتی که هر دو بیت در موقعیت‌های متناظر از دو عملوند برابر با یک باشند بیت متناظر در حاصل عملگر نیز برابر با یک و در غیراینصورت برابر با صفر خواهد بود.

عملگر OR بیتی عملگری است که عمل OR (یا) منطقی را روی هر جفت از بیت‌های متناظر در عملوندهایش انجام می‌دهد. اگر دو بیت در موقعیت‌های متناظر از دو عملوند برابر با صفر باشند بیت متناظر در حاصل عملگر نیز برابر با صفر و در غیراینصورت برابر با یک خواهد بود.

عملگر XOR بیتی نیز عمل یای مانعه الجمع (یای انحصاری) منطقی را روی هر جفت از بیت‌های متناظر در عملوندهایش انجام می‌دهد. به این معنا که اگر هر دو بیت در موقعیت‌های متناظر از دو عملوند برابر با صفر یا هر دو برابر با یک باشند بیت متناظر در حاصل عملگر برابر با صفر و در غیراینصورت (یکی صفر و دیگری یک باشد) برابر با یک خواهد بود.

عملگر بیتی Bitwise Operator
نمونه‌ای از انجام چهار عملیات بیتی. در این تصویر، حاصل عملگرهای بیتی NOT و AND و OR و XOR را روی عملوندهای مشخص شده مشاهده می‌کنید.

عملگرهای شیفت بیتی، ارقام عملوند خود را براساس نوع شیفت، به سمت چپ یا راست جابجا می‌کنند. از آنجایی که ثبات‌ها در پردازنده دارای طول ثابتی هستند بنابراین در هر عمل شیفت، بیت‌هایی از یک سمت حذف (یا خارج) می‌شوند (Shift out) و بیت‌هایی نیز از سمت دیگر برای تکمیل موقعیت آزاد شده وارد می‌شوند (Shift in). به عنوان مثال در شیفت تک بیتی به سمت راست، سمت چپ‌ترین موقعیت بیتی آزاد می‌شود و لازم است یک بیت دیگر در این مکان قرار داده شود. تفاوت انواع مختلف عملگرهای شیفت بیتی در نحوه تعیین مقدار بیتی است که می‌بایست در موقعیت آزاد شده قرار گیرد.

عملگر بیتی شیفت Bit Shift
مقایسه انواع شیفت بیتی روی عدد باینری 00010111 – شیفت‌ها نوعی عملگر بیتی به شمار می‌روند که ارقام عملوند خود را براساس نوع شیفت، به سمت چپ یا راست جابجا می‌کنند.

در شیفت حسابی (Arithmetic Shift) به سمت چپ، بیت‌های صفر از سمت راست به منظور تکمیل موقعیت آزاد شده وارد می‌شوند. اما در شیفت حسابی به سمت راست مقدار باارزش‌ترین بیت، موقعیت آزاد را از سمت چپ تکمیل می‌کند. با توجه به اینکه در اعداد باینری علامت‌دار، با ارزش‌ترین بیت، تعیین‌کننده علامت عدد می‌باشد بنابراین شیفت حسابی به سمت راست، علامت عدد را تغییر نمی‌دهد.

در شیفت منطقی (Logical Shift) برخلاف شیفت حسابی همواره بیت‌های صفر جایگزین موقعیت‌های آزاد شده می‌شود. از اینرو شیفت منطقی و حسابی به سمت چپ هردو نتیجه‌ای یکسان خواهند داشت. یکی دیگر از انواع مهم شیفت، شیفت دایره ای (Circular Shift) نام دارد که در آن مقدار همان بیتی که هنگام شیفت به راست یا چپ خارج شده است از سمت دیگر وارد می‌شود به گونه‌ای که می‌توانید تصور کنید دو سر رشته بیتی همانند یک دایره به یکدیگر متصل شده است.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

بایت Byte

بایت یا Byte چیست؟

بایت (Byte) یکی از واحدهای اندازه‌گیری اطلاعات دیجیتال است که معمولا از 8 بیت (bit) تشکیل شده است. در گذشته تعداد بیت‌های لازم برای کدگذاری یک کاراکتر در رایانه را بایت می‌نامیدند.

استاندارد رایج 8 بیتی برای بایت، امکان نمایش باینری اعداد صفر تا 255 را در یک بایت فراهم می‌آورد. البته در گذشته اندازه بایت متغیر و وابسته به سخت افزار بوده است. به همین دلیل در برخی مواقع برای از بین بردن ابهام Byte، از واژه‌ی اختصاصی‌تر Octet (اکتت) با نماد o به عنوان واحدی متشکل از 8 بیت استفاده می‌شود.

لازم به ذکر است نماد Byte، حرف B بزرگ می‌باشد. این در حالی است که معمولا از حرف b کوچک به عنوان نماد بیت استفاده می‌شود. اما به منظور جلوگیری از بروز تداخل میان این دو نماد، استفاده از نماد bit برای واحد بیت توصیه می‌شود.

پیشوندهای بایت

همانند بیت، برای Byte نیز از پیشوندهای کیلو (یا Kilo با نماد K معادل هزار)، مگا (یا Mega با نماد M معادل میلیون)، گیگا (یا Giga با نماد G معادل میلیارد)، ترا (یا Tera با نماد T معادل 10 به توان 12) و … استفاده می‌شود. بر این اساس 1KB معادل 1000 بایت، 1MB معادل یک میلیون بایت و … خواهد بود. به طور مشابه پیشوندهای باینری نظیر کیلوباینری (Ki معادل 1024 یا 2 به توان 10)، مگاباینری (Mi معادل 2 به توان 20) و … برای بایت نیز قابل استفاده هستند. در جدول زیر می‌توانید نماد تعدادی از واحدهای رایج و ضریبی که به آن‌ها منتسب شده است را مشاهده کنید.

ضریبنمادنام نمادضریبنمادنام نماد
103KBkilobyte210KiBkibibyte
106MBmegabyte220MiBmebibyte
109GBgigabyte230GiBgibibyte
1012TBterabyte240TiBtebibyte
1015PBpetabyte250PiBpebibyte
1018EBexabyte260EiBexbibyte
1021ZBzettabyte270ZiBzebibyte
1024YByottabyte280YiByobibyte

نوع داده بایت

در بسیاری از زبان‌های برنامه نویسی (از جمله جاوا، ویژوال بیسیک و سی شارپ) نیز نوع داده‌ای به نام Byte وجود دارد که 8 بیت فضا را اشغال می‌کند و معمولا برای نگه‌داری اعداد صحیح بدون علامت از 0 تا 255 یا اعداد صحیح علامتدار از -128 تا 127 استفاده می‌شود.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

بیت ریت Bitrate

بیت ریت (نرخ انتقال) یا Bitrate چیست؟

در ارتباطات دیجیتال و علوم رایانه، بیت ریت (Bitrate یا Bit Rate) به تعداد بیت‌هایی گفته می‌شود که در واحد زمان (معمولا یک ثانیه) پردازش یا انتقال می‌یابند.

Bitrate با واحد بیت بر ثانیه bit/s (یا bps) و مشتقات آن نظیر کیلوبیت بر ثانیه (Kbps)، مگابیت بر ثانیه (Mbps)، گیگابیت بر ثانیه (Gbps) و … سنجیده می‌شود.

در حوزه‌ی مالتی مدیا، Bitrate به تعداد بیت‌هایی گفته می‌شود که در واحد زمان پخش ویدیو یا صوت مورد استفاده قرار می‌گیرد. حجم و کیفیت صوت یا ویدیو با میزان Bitrate مورد استفاده هنگام انکدینگ رابطه مستقیم دارد.

بیت Bit

منظور از بیت یا Bit چیست؟

بیت (bit) واحد اصلی (یا کوچکترین واحد) اطلاعات در رایانش و ارتباطات دیجیتالی است. یک bit می‌تواند فقط یکی از دو مقدار (که معمولا با 0 و 1 نشان داده می‌شود) را داشته باشد. اصطلاح bit از واژه‌ی مرکب binary digit (به معنای رقم دودویی) گرفته شده است.

در عمل، مدارهای منطقی با مقادیر bit ها در قالب دو ولتاژ مختلف رفتار می‌کنند به شکلی که یک ولتاژ نمایانگر مقدار 0 (یا false) و ولتاژ دیگر شبیه ساز مقدار 1 (یا true) خواهد بود.

همانند بسیاری از واحدهای دیگر، پیشوندهایی از قبیل Kilo (کیلو)، Mega (مگا)، Giga (گیگا)، Tera (ترا) و … نیز به bit افزوده می‌شود که واحدهایی چون Kbit (معادل هزار بیت)، Mbit (معادل میلیون بیت) و … را شکل می‌دهند. البته پیشوندهای دیگری نیز وجود دارند که به پیشوندهای IEC مشهورند و به صورت kibi (کیلوباینری با نماد Ki و ضریب 2 به توان 10 یا 1024)، mebi (مگاباینری با نماد Mi و ضریب 2 به توان 20)، gibi (گیگاباینری با نماد Gi و ضریب 2 به توان 30)، tebi (تراباینری با نماد Ti و ضریب 2 به توان 40) و … مورد استفاده قرار می‌گیرند. این واحدها به عنوان پیشوندهای باینری نیز شناخته می‌شوند. در جدول زیر می‌توانید نماد تعدادی از واحدهای رایج و ضریبی که به آن‌ها منتسب شده است را مشاهده کنید.

علاوه بر نماد bit، از حرف b کوچک نیز برای نمایش این واحد استفاده می‌شود. معمولا هشت bit را معادل یک بایت (Byte) درنظر می‌گیرند.

ضریبنمادنام نمادضریبنمادنام نماد
103kbitkilobit210Kibitkibibit
106Mbitmegabit220Mibitmebibit
109Gbitgigabit230Gibitgibibit
1012Tbitterabit240Tibittebibit
1015Pbitpetabit250Pibitpebibit
1018Ebitexabit260Eibitexbibit
1021Zbitzettabit270Zibitzebibit
1024Ybityottabit280Yibityobibit