Літерали

Зміст Наступна

Вивчення VHDL

Літерали

Десь третина жителів планети говорять англійською мовою. З них біля половини не знають англійської мови. Наприклад, щоб розмовляти на піджин-інгліш, досить мати словниковий запас 200-300 слів. Природно, на такому діалекті творів не пишуть. Приблизно те ж саме можна сказати і про тих, хто пишуть на VHDL. Але для конструювання творів за допомогою VHDL потрібно хоча б знати синтаксис мови. Ця сторінка і кілька інших цьому присвячуються.

У мові літералом задається такий лексичний елемент, який при компіляції кодується деяким числовим кодом, що залишається постійним у програмі при її виконанні. Константи, операнди у виразах, ідентифікатори представляються літералами. Те, що синтаксис літералу відображає ознаку типу відповідного йому об’єкта, є однією з особливостей VHDL.

Числовий літерал являє собою ціле або реальне число.

Десятковий літерал – це числовий літерал у системі числення з основою(базисом) 10, наприклад, 120.

Реальний літерал визначається обов’язковою наявністю крапки, що відокремлює цілу частину від дробової, наприклад, 120.0, 1.20е2.

Базисний літерал – це число в системі числення із заданим базисом від 0 до 16. Його умовний синтаксис:

\базиснийий літерал\::=\базис\#\число в базисі\#[\експонента\]

Нагадування: при описанні синтаксису текст у квадратних дужках означає необов’язковий елемент. Наприклад, 10#112# = 16#70# = 2#1110000# = 2#111#e4. Можна також застосовувати базис і 3, і 4, і 5…

Яка ще мова надає таку можливість?!

Символьний літерал використовується як значення для операторів або як елемент перелічного типу, наприклад, біт. Він записується як символ в одиночних лапках, наприклад, ‘1’, ‘F’ , ‘@’.

Ідентифікатор використовується як ім’я константи, змінної, функції, сигналу, порту, підпрограми, об’єкта проекту, а також як мітка. Він містить латинські букви, з яких він починається, цифри і деякі символи, наприклад, однократний символ підкреслення.

Ідентифікатори з однаковою назвою але з різними великими і малими літерами вважаються одним ідентифікатором, тобто вони “нечутливі” до висоти букв. Ключове слово мови не може бути ідентифікатором.

Ідентифікатор може складатися з довільного ланцюжка символів, але цей ланцюжок повинен бути обмежений зворотними косими. Це, так званий, розширений ідентифікатор. Наприклад:

C,    A_and_B,    \наш сигнал\,    \а+в\,    \process\

є коректними ідентифікаторами.

Перелічний літерал. До перелічних літералів належать символьний літерал і ідентифікатор. Із цих літералів формується множина перелічного типу.

Рядковий літерал. Рядковим літералом є ланцюжок символів, обмежений подвійними лапками, наприклад, “АБВГ”. Літерал бітового рядка може мати різний вигляд залежно від базису системи числення. Наприклад, літерали “01111010”, В”01111010″, Х”7А” являють собою те саме значення, причому В і Х означають двійковий і шіснадцатиричний базиси, відповідно.

В числових літералах і бітових рядках допускається вставляти символи підкреслення для зручності читання, які видаляються при компіляції.

Наприклад, Х”АВ_CD”, “1101_0111”, 1_024, 0FF_ABBA .

Анатолій Сергієнко
E-mail: aser@comsys.kpi.ua