Фармакод (Sgjbgtk;)
В статье не хватает ссылок на источники (см. рекомендации по поиску). |
Фармако́д, также известный как Фармацевтический двоичный код, является стандартом штрихового кода, используемый в фармацевтической промышленности в качестве системы контроля упаковок. Он может быть читаемым, даже несмотря на ошибки при печати. Фармакоды могут быть напечатаны в нескольких цветах, чтобы убедиться, что оставшаяся часть упаковки (которую фармацевтическая компания должна печатать, чтобы защитить себя от юридической ответственности) правильно напечатана.
Кодирование
[править | править код]Фармакод может представляться только одним целым числом от 1 до 131 070. В отличие от других широко используемых линейных штриховых кодов, фармакод не хранит данные в виде, соответствующем возможности понимания человеком цифр, число кодируется в двоичном формате. Фармакод читается сканером справа налево и слева направо (если сканер всенаправленный): каждая узкая полоса обозначает ноль в двоичном коде и каждая широкая полоса обозначает единицу. Минимальная длина штрихкода — 1 узкая полоса и максимальная — 16 широких, так что наименьшее число, которое может быть закодировано — это 1 (1 узкая полоса) и самое большое — 131070 (16 широких полос). Фармакоды представляются цветами, которые доминируют на упаковке.
Алгоритм кодирования
[править | править код]- К числу, необходимому для кодирования, необходимо прибавить единицу (пример: 69 + 1 = 70)
- Необходимо перевести число в двоичный формат (7010 = 10001102)
- «Вычеркнуть» единицу, стоящую впереди всех остальных чисел (
1000110 → 000110) - Преобразовать число в линейный код, заменяя нули узкими полосками, а единицы — широкими (000110 → IIIIII)
Алгоритм декодирования
[править | править код]- Заменить узкие и широкие полоски числами (IIIIIII → 0110010)
- Поставить единицу спереди этого числа (10110010)
- Выполнить перевод этого двоичного числа в десятичное (101100102 → 17810)
- Вычесть из полученного числа единицу (178 — 1 = 177)