Menu
Coddy logo textTech

Двоичное представление

Часть раздела Основы путешествия по Verilog на Coddy — урок 13 из 90.

В Verilog мы работаем с цифровыми схемами, которые понимают только 0 и 1. Они представляются в binary.

Binary использует только две цифры: 0 и 1. Каждая binary цифра называется bit.

DecimalBinaryBits
001 bit
111 bit
2102 bits
3112 bits
41003 bits
51013 bits

Write 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, сколько бит содержит значение.

Как перевести decimal в binary

Поочерёдно делите decimal число на 2 и записывайте остатки в направлении снизу вверх.

Пример: переведите 9 в binary

ШагДелениеЧастноеОстаток
19 ÷ 241
24 ÷ 220
32 ÷ 210
41 ÷ 201

Читайте остатки от последнего к первому: 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)
challenge icon

Задание

Заполните код, записав пропущенные двоичные значения.

Что нужно сделать:

  1. Напишите двоичный код для десятичного числа 5 (4 bits)
  2. Напишите двоичный код для десятичного числа 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
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы