Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

التمثيل الثنائي

جزء من قسم الأساسيات في رحلة Verilog على Coddy — الدرس 13 من 90.

في Verilog، نحن نعمل مع الدوائر الرقمية التي تفهم فقط 0 و 1. يتم تمثيل هذه في النظام الثنائي.

يستخدم النظام الثنائي رقمين فقط: 0 و 1. يُسمى كل رقم ثنائي بت (bit).

عشريثنائيبتات
001 بت
111 بت
2102 بت
3112 بت
41003 بت
51013 بت

كتابة الأرقام الثنائية في Verilog

لكتابة الأرقام الثنائية في Verilog، استخدم البادئة 'b:

4'b1010    // 1010 ثنائي بـ 4 بت (عشري 10)
8'b11110000 // 11110000 ثنائي بـ 8 بت (عشري 240)
2'b01      // 01 ثنائي بـ 2 بت (عشري 1)

الرقم الذي يسبق 'b يخبر Verilog بعدد البتات التي تحتوي عليها القيمة.

كيفية تحويل العشري إلى ثنائي

اقسم الرقم العشري على 2 بشكل متكرر واقرأ البواقي من الأسفل إلى الأعلى.

مثال: تحويل 9 إلى ثنائي

الخطوةالقسمةناتج القسمةالباقي
19 ÷ 241
24 ÷ 220
32 ÷ 210
41 ÷ 201

اقرأ البواقي من الأخير إلى الأول: 1001

9 = 4'b1001

مثال في الكود

module binary_example;
  reg [3:0] a;
  
  initial begin
    a = 4'b1010;     // ثنائي 1010 = عشري 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)
challenge icon

التحدي

أكمل الكود عن طريق كتابة القيم الثنائية المفقودة.

ما يجب القيام به:

  1. اكتب القيمة الثنائية للرقم العشري 5 (4 بت)
  2. اكتب القيمة الثنائية للرقم العشري 14 (4 بت)

ورقة مرجعية

يستخدم النظام الثنائي الرقمين 0 و 1 فقط. كل رقم يسمى بت (bit).

اكتب الأرقام الثنائية في Verilog باستخدام البادئة 'b — الرقم الذي يسبقها يحدد عرض البتات (bit width):

4'b1010    // ثنائي 4-بت = عشري 10
8'b11110000 // ثنائي 8-بت = عشري 240

تنسيقات العرض: %b (ثنائي)، %d (عشري)، %h (ستة عشري).

من عشري إلى ثنائي: اقسم على 2 بشكل متكرر، واقرأ البواقي من الأسفل إلى الأعلى.

// 9 ÷ 2 → 4 باقي 1 → 2 باقي 0 → 1 باقي 0 → 0 باقي 1  ⟹  1001
// 9 = 4'b1001

جرّب بنفسك

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
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات