التمثيل الثنائي
جزء من قسم الأساسيات في رحلة Verilog على Coddy. الدرس 13 من 90.
في Verilog، نعمل مع دوائر رقمية لا تفهم إلا 0 و1. ويتم تمثيل هذه القيم باستخدام binary.
يستخدم Binary رقمين فقط: 0 و1. يُسمّى كل رقم bit ثنائي.
| Decimal | Binary | Bits |
|---|---|---|
| 0 | 0 | 1 bit |
| 1 | 1 | 1 bit |
| 2 | 10 | 2 bits |
| 3 | 11 | 2 bits |
| 4 | 100 | 3 bits |
| 5 | 101 | 3 bits |
كتابة Binary في Verilog
لكتابة أعداد binary في Verilog، استخدم البادئة 'b:
4'b1010 // 4-bit binary 1010 (decimal 10)
8'b11110000 // ثنائي 8 بت 11110000 (عشري 240)
2'b01 // 2-bit binary 01 (decimal 1)يُخبر الرقم الذي يسبق 'b لغة Verilog بعدد bits التي تحتوي عليها القيمة.
كيفية تحويل العدد decimal إلى Binary
اقسم العدد decimal على 2 بشكل متكرر، واقرأ البواقي من الأسفل إلى الأعلى.
مثال: تحويل 9 إلى binary
| الخطوة | القسمة | حاصل القسمة | الباقي |
|---|---|---|---|
| 1 | 9 ÷ 2 | 4 | 1 |
| 2 | 4 ÷ 2 | 2 | 0 |
| 3 | 2 ÷ 2 | 1 | 0 |
| 4 | 1 ÷ 2 | 0 | 1 |
اقرأ البواقي من الأخير إلى الأول: 1001
9 = 4'b1001
مثال في التعليمات البرمجية
module binary_example;
reg [3:0] a;
initial begin
a = 4'b1010; // Binary 1010 = decimal 10
$display("a = %b (binary)", a);
$display("a = %d (decimal)", a);
$display("a = %h (hex)", a);
$finish;
end
endmoduleالناتج:
a = 1010 (binary)
a = 10 (decimal)
a = a (hex)التحدي
أكمل الكود بكتابة القيم الثنائية المفقودة.
ما يجب فعله:
- اكتب Binary للقيمة decimal 5 (4 bits)
- اكتب Binary للقيمة decimal 14 (4 bits)
جرّب بنفسك
module binary_challenge;
reg [3:0] a, b;
initial begin
// اكتب الثنائي للعدد العشري 5 (4 بتات)
a = 4'b______;
// Write binary for decimal 14 (4 bits)
b = 4'b______;
$display("5 = %b", a);
$display("14 = %b", b);
$finish;
end
endmoduleيتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4العوامل الجزء 1
العوامل الحسابيةعامل باقي القسمةعوامل المقارنةمراجعة - الرياضيات البسيطةالعوامل على مستوى البتات7التعيين والبوابات
التعيين المستمرالتعيين باستخدام العواملالعناصر الأساسية المدمجة للبواباتبوابات AND وOR وNOTبوابات XOR وXNORمراجعة - دائرة البوابات المنطقية5المعاملات - الجزء الثاني
المعاملات المنطقيةمعاملات الاختزالمعاملات الإزاحةمعامل الربطالمعامل الشرطيمراجعة - تحدي المعاملات11الحلقات التكرارية
حلقة Forحلقة Whileحلقة التكرارحلقة لا نهائيةتعليمة التعطيلمراجعة - أنماط الحلقات التكرارية3نظام الأعداد
التمثيل الثنائيالأعداد محددة الحجمالأعداد غير محددة الحجمالأعداد السالبةالقيم الخاصة X و Zمراجعة - تنسيقات الأعداد6الوحدات
هيكل الوحدةمنافذ الإدخال والإخراجمنافذ الإدخال والإخراج ثنائية الاتجاهإنشاء مثيل للوحدةربط المنافذ حسب الاسمربط المنافذ حسب الترتيبمراجعة - بناء وحدة9الكتل الإجرائية
كتلة Alwaysكتلة Initialقائمة الحساسيةإسناد حاجزإسناد غير حاجزمراجعة - Always مقابل Initial15متحكّم إشارات المرور
تعريف الحالاتمنطق آلة الحالاتتدرّب بنفسك: مترجم Verilog عبر الإنترنت