- •Список сокращений
- •1. Эис, их классификация и принципы построения
- •1.1. Понятие системы
- •1.2. Понятие эис. Назначение эис
- •1.3.Классификация эис
- •1.4. Основные принципы и методы построения эис.
- •1.4.1. Принципы построения и функционирования эис.
- •1.4.2.Структурный и объектно-ориентированный подходы к проектированию.
- •1.4.3.Понятие жизненного цикла эис.
- •Вопросы для повторения
- •Понятие системы.
- •Резюме по теме
- •2.Теоретические основы работы с информацией
- •2.1. Понятие информации
- •2.2. Измерение количества информации
- •2.3.Кодирование информации
- •2.3.1.Оптимальное основание кода
- •2.3.2.Запись натурального числа в двоичной системе
- •2.3.3.Код Грэя
- •2.3.4.Оптимальное кодирование
- •2.3.5.Помехозащищенное кодирование
- •2.4.Методы организации данных в памяти эвм
- •2.4.1.Типы данных, сд и атд
- •2.4.2.Время выполнения программ
- •2.4.3.Списки
- •2.4.4.Реализация списков
- •Реализация списков посредством массивов
- •Реализация списков с помощью указателей
- •2.4.5.Стеки
- •2.4.6. Очереди
- •2.4.7.Графы и деревья
- •2.4.8.Некоторые сд для хранения графов и деревьев
- •Вопросы для повторения
- •Резюме по теме
- •3. Особенности работы с экономической информацией
- •3.1.Классификация и кодирование экономической информации.
- •3.2.Единая система классификации и кодирования
- •3.3.Штриховое кодирование
- •Алгоритм расчета контрольного разряда ean
- •Вопросы для повторения
- •Резюме по теме
- •4.Модели данных
- •4.1.Атрибуты, составные единицы информации, показатели, документы
- •4.2.Операции над сеи
- •4.3.Реляционная модель данных
- •4.3.1. Отношения, как основа реляционной модели данных
- •4.3.2. Операции над отношениями
- •4.3.3. Нормализация отношений
- •4.3.4. Функциональные зависимости
- •4.3.5. Нормальные формы
- •Вопросы для повторения
- •Операции над сеи.
- •Операции над отношениями.
- •Резюме по теме
- •5.Модели знаний
- •5.1. Классификация знаний
- •5.2. Продукционная модель представления знаний
- •5.3.Представление знаний в виде семантической сети
- •5.4. Фреймовая модель представления знаний
- •5.5. Логическая (предикатная) модель представления знаний
- •Классификация знаний.
- •6.2.Структурная модель предметной области
- •6.2.1.Функциональная методология idef0
- •6.2.2. Функциональная методика потоков данных
- •6.3.Объектная модель предметной области
- •6.4. Сравнение методик моделирования предметной области
- •Вопросы для повторения
- •Понятие модели предметной области.
- •Резюме по теме
- •Литература Рекомендуемая основная литература
- •Рекомендуемая дополнительная литература
- •Задачник Введение
- •Краткое изложение используемых методов решения и основных теоретических положений
- •Примеры решения типовых задач
- •Задачи для самостоятельного решения
- •Практикум (лабораторный) Лабораторная работа №1. Кодирование информации
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Понятие информации.
- •Способ оценки результатов
- •Пример выполнения работы
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Список индивидуальных данных
- •Пример выполнения работы
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
Алгоритм расчета контрольного разряда ean
Для расчета контрольного разряда в EAN-8, EAN-13, а также в форматах EAN-14 (ITF-14), UPC-A и UPC-E, используется один и тот же алгоритм вычислений («по модулю 10»):
Пронумеровать все разряды справа налево (например, от 1 до 13 для EAN-13), начиная с позиции контрольного разряда.
Шаг 1: Начиная со 2-го, сложить значения всех ЧЕТНЫХ разрядов.
Шаг 2: Полученную сумму умножить на 3.
Шаг 3: Начиная с 3-го, сложить значения всех НЕЧЕТНЫХ разрядов.
Шаг 4: Сложить результаты, полученные во 2 и 3 шагах.
Шаг 5: Значение контрольного разряда является наименьшим числом, которое в сумме с величиной, полученной в шаге 4, дает число, кратное 10.
Все недоразумения при расчетах возникают, как правило, по причине того, что многие неосознанно неправильно нумеруют разряды слева направо. При нумерации СПРАВА НАЛЕВО нет разницы в порядке расчета контрольного разряда С для 8, 12, 13 или 14-разрядного кода.
Рассмотрим пример расчета контрольного разряда С для кода 560172111001С (формат EAN-13).
Шаг 1. Сложить цифры, стоящие на четных местах: 6+1+2+1+0+1=11,
Шаг 2. Полученную сумму умножить на 3: 11*3=33,
Шаг 3. Сложить цифры, стоящие на нечетных местах, без контрольной цифры: 5+0+7+1+1+0=14,
Шаг 4. Сложить числа, полученные при выполнении 2 и 3 шагов: 33+14=47,
Шаг 5. В числе 47 отбросить десятки - получим 7, 10-7=3.
Итак, после расчета контрольного разряда получим код 5601721110013.
Теперь рассмотрим, как формировать графическое изображение штрих-кода в формате EAN-13 с помощью выбранного шрифта. В штрих-коде выделяют следующие составляющие (см. рис.3.5):
First Flag - графическое изображение первого левого символа,
Second Flag - графическое изображение второго левого символа,
Left Hand - графическое изображение пяти следующих левых символов (левая часть графического изображения штрих-кода),
CENTER - графическое изображение символа, разделяющего левую и правую часть графического изображения штрих-кода (центральный символ),
Right Hand - графическое изображение пяти правых символов (правая часть графического изображения штрих-кода),
Check character - графическое изображение самого правого символа (контрольного символа).
Для формирования графического изображения штрих-кода используется таблица 3.2. Названия колонок таблицы соответствуют перечисленным составляющим штрих-кода. В каждой затемненной клетке таблицы с номером (i,j) содержится символ и в скобках его ASCII код. Если данный символ напечатать в выбранном штрих-кодовом шрифте, то его изображение будет соответствовать графическому изображению цифры i. Номер столбца таблицы - j выбирается в зависимости от того, в какую графическую составляющую входит цифра i.
Таблица 3.2 |
|||||||||||
Данные для формирования графического изображения штрих кода |
|||||||||||
Символ штрих-кода |
First Flag |
Second Flag |
Left Hand A |
Left Hand B |
Right Hand |
Check character |
Data Characters |
||||
1 |
2 |
3 |
4 |
5 |
|||||||
Символ (код ASCII), определяющий графическое изображение символа штрих-кода |
|||||||||||
0 |
!(33) |
` (96) |
0 (48) |
@(64) |
P(80) |
p(112) |
A |
A |
A |
A |
A |
1 |
«(34) |
a(97) |
1(49) |
A(65) |
Q(81) |
q(113) |
A |
B |
A |
B |
B |
2 |
#(35) |
b(98) |
2(50) |
B(66) |
R(82) |
r(114) |
A |
B |
B |
A |
B |
3 |
$(36) |
c(99) |
3(51) |
C(67) |
S(83) |
s(115) |
A |
B |
B |
B |
A |
4 |
%(37) |
d(100) |
4(52) |
D(68) |
T(84) |
t(116) |
B |
A |
A |
B |
B |
5 |
& (38) |
e(101) |
5(53) |
E(69) |
U(85) |
u(117) |
B |
B |
A |
A |
B |
6 |
' (39) |
f(102) |
6(54) |
F(70) |
V(86) |
v(118) |
B |
B |
B |
A |
A |
7 |
( (40) |
g(103) |
7(55) |
G(71) |
W(87) |
w(119) |
B |
A |
B |
A |
B |
8 |
) (41) |
h(104) |
8 (56) |
H(72) |
X(88) |
x(120) |
B |
A |
B |
B |
A |
9 |
*(42) |
i(105) |
9(57) |
I(73) |
Y(89) |
y(121) |
B |
B |
A |
B |
A |
|
|(124) – CENTER |
|
|||||||||
Отметим, что в таблице содержится две колонки Left Hand: Left Hand A и Left Hand B. Кроме этого, в таблице присутствует группа колонок Data Characters. В этой группе колонок содержится пятисимвольная маска, определяющая правила формирования левой части графического изображения штрих-кода. Графическое изображение текущего левого символа штрих-кода выбирается из колонки Left Hand A или Left Hand B в зависимости от того, чему равен (A или B) соответствующий символ маски. Маска определяется, исходя из первого символа (First Flag) штрих-кода. Если первый символ i, то маска находится в i-ой строке таблицы 3.2.
Рассмотрим подробнее правила формирования графического изображения штрих-кода. Пусть требуется получить графическое изображение штрих-кода 2001234567893.
Первый символ рассматриваемого штрих-кода равен 2. Графическое изображение 2 кодирует символ # (код ASCII 35). Маска в этом случае равна АВВАВ.
Второй символ равен 0. Графическое изображение 0 кодирует символ ` (код ASCII 96).
Далее в рассматриваемом штрих-коде идут пять символов левой части 01234. Выбор символов, кодирующих их графическое изображение, осуществляется, исходя из символов маски М.
Так первый символ маски М равен А. Следовательно, графическое изображение первого символа левой части, т.е. графическое изображение 0, кодирует символ 0 (код ASCII 48), взятый из соответствующей строки колонки Left Hand A.
Второй символ маски М равен В. Следовательно, графическое изображение 1 (второго символа левой части) кодирует символ A (код ASCII 65), взятый из соответствующей строки колонки Left Hand B.
Аналогично получим, что графическое изображение 2 кодирует символ B(66), 3 – 3(51), 4 – D(68).
Итак, мы получили последовательность символов #`0AB3D, кодирующую First Flag, Second Flag и Left Hand части графического изображения рассматриваемого штрих-кода.
Далее включаем в эту последовательность символ, кодирующий графическое изображение разделителя CENTER. Это всегда символ | (код ASCII 124).
После этого переходим к кодированию правой части (Right Hand) графического изображения штрих-кода. Кодирование правой части в отличие от кодирования левой части не зависит от маски.
В рассматриваемом штрих-коде правая часть состоит из символов 56789. Графическое изображение 5 кодирует символ U(85), взятый из соответствующей строки колонки Right Hand.
Аналогично получим, что графическое изображение 6 кодирует символ V(86), 7 – W(87), 8 – X(88), 9 – Y(89).
В завершение кодируем контрольный символ (Check character). В рассматриваемом штрих-коде этот символ равен 3. Графическое изображение 3 кодирует символ s(115), взятый из соответствующей строки колонки Check character.
Итак, графическое изображение штрих-кода 2001234567893 кодирует последовательность симолов #`0AB3D|UVWXYs. Само графическое изображение этого штрих-кода представлено на рис.3.6.
Алгоритм формирования графического изображения штрих-кода представлен блок-схемой на рис.3.7.
