[TUTORIAL - Verilog] Format Bilangan pada Verilog
Dalam Verilog, angka-angka dapat didefinisikan dengan berbagai format (basis) bilangan. Jika tidak didefinisikan secara spesifik, maka angka yang ditulis akan diperlakukan seperti integer. Notasi dari angka dapat ditulis dalam huruf kapital maupun huruf kecil (misal b atau B untuk merepresentasikan bilangan biner). Untuk menentukan basis bilangan pada Verilog, ikutilah aturan berikut:
<tanda><ukuran>'<basis><nilai>
<tanda> dapat diisi '-' untuk negatif, atau biarkan kosong untuk menyatakan bilangan positif. <ukuran> jika tidak ditentukan maka akan diperlakukan sebesar 32-bit. Jika <basis> tidak ditentukan, maka bilangan tersebut diperlakukan sebagai desimal. Untuk mempermudah dalam pembacaan, maka diizinkan menggunakan tanda '_' terutama dalam mendefinisikan bilangan biner.
Basis bilangan yang didukung oleh Verilog adalah sebagi berikut:
sintaks | Keterangan |
---|---|
'b | biner tidak bertanda |
'o | oktal tidak bertanda |
'd | desimal tidak bertanda |
'h | heksadesimal tidak bertanda |
'sb | biner bertanda |
'so | oktal bertanda |
'sd | desimal bertanda |
'sh | heksadesimal bertanda |
Berikut beberapa contoh penggunaan berbagai basis bilangan dan keterangannya
10 //diperlakukan sebagai desimal 10 (ukuran 32-bit) 4'b1010 //4-bit biner dengan nilai 1010 8'b1101_0101 //8-bit biner dengan nilai 1101_0101 (ingat tanda '_' tidak dieksekusi dan hanya mempermudah pembacaan) 4'd1 //desimal 4 dengan ukuran 4-bit (0001 dalam biner) -6'b101 //6-bit, bentuk komplemen kedua dari 000101 (menjadi 111011). Jika bingung, baca kembali teori komplemen bilangan biner 6'h2f //bilangan heksa dengan ekuivalen biner 0010_1111 6'o13 //bilangan oktal dengan ekuivalen biner 001_011 8'd7 //8-bit biner dengan nilai 0000_0111 -4d'1 //desimal 1 dalam 4-bit menjadi 0001. Maka komplemen keduanya = 1111 8'hFA //8-bit dengan nilai biner 1111_1010 8'hab //8-bit dengan nilai biner 1010_1011 'b1111 //jika ukuran tidak dideklarasikan, maka diperlakukan sebesar 32-bit. Maka dalam bilangan heksadesimal menjadi (0000_000F)16 4'bz //4-bit dengan nilai zzzz 16'oF2 //TIDAK VALID. Bilangan oktal tidak mengandung F
Demikian tutorial ini. Semoga bermanfaat.
Mari Gabung
Halo
, Ada yang ingin disampaikan? Jangan sungkan untuk gabung diskusi ini. Silahkan Login dulu atau Daftar baru.