Menu
CoddyTech

بوابات AND وOR وNOT

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

يتناول هذا الدرس أبسط بوابات المنطق الأساسية الثلاث: AND وOR وNOT. تشكّل هذه البوابات أساس تصميم المنطق الرقمي.

بوابة AND

تُخرج بوابة AND القيمة 1 فقط عندما تكون جميع المدخلات 1.

جدول الحقيقة (بمدخلين):

about
000
010
100
111

بدائية بوابة Verilog:

and(out, a, b);

المكافئ للتعيين المستمر:

assign out = a & b;

بوابة OR

تُخرج بوابة OR القيمة 1 عندما يكون مدخل واحد على الأقل هو 1.

جدول الحقيقة (بمدخلين):

about
000
011
101
111

بدائية بوابة Verilog:

or(out, a, b);

المكافئ للتعيين المستمر:

assign out = a | b;

NOT gate

تُخرج NOT gate العكس من مدخلها الوحيد. وتُسمّى أيضًا inverter.

جدول الحقيقة:

aout
01
10

بدائي بوابة Verilog:

not(out, a);

المكافئ للتعيين المستمر:

assign out = ~a;

مدخلات متعددة

يمكن لبوابات AND وOR أن تحتوي على أكثر من مدخلين:

and(out, a, b, c);     // AND بثلاث مدخلات (out = a & b & c)
or(out, x, y, z, w);   // OR بأربع مدخلات

تحتوي بوابات NOT دائمًا على مدخل واحد بالضبط.

مثال على التعليمات البرمجية

module and_or_not (
  input a, b,
  output and_out,
  output or_out,
  output not_out
);
  and(and_out, a, b);   // بوابة AND
  or(or_out, a, b);     // بوابة OR
  not(not_out, a);      // بوابة NOT (عاكس)
endmodule
challenge icon

التحدي

أضف بدائيات البوابات المفقودة بناءً على المهام.

ما يجب فعله:

  1. أنشئ بوابة AND مع الخرج and_result والمدخلين p وq
  2. أنشئ بوابة OR مع الخرج or_result والمدخلين p وq
  3. أنشئ بوابة NOT مع الخرج not_result والمدخل p

جرّب بنفسك

module gates_challenge (
  input p,
  input q,
  output and_result,
  output or_result,
  output not_result
);
  
  // TODO: أضف بوابة AND (and_result = p & q)
  
  // TODO: أضف بوابة OR (or_result = p | q)
  
  // TODO: أضف بوابة NOT (not_result = ~p)

endmodule
quiz iconاختبر نفسك

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

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

تدرّب بنفسك: مترجم Verilog عبر الإنترنت