Христианский штрих код — "888"!


[Православная беседа] [Ответы и комментарии] [Написать ответ]


Отправлено Николай п. 12:43:24 30/03/2000:

 
Здравствуйте, уважаемые братья и сестры!
 
 
Хотелось бы: 1) дать ответ на статью в EAN;
 
 
2) ПРЕДЛОЖИТЬ ХРИСТИАНСКУЮ СИСТЕМУ КОДОВ (см. в конце)
 
 
http://www.ean.ru/znak/znak8.htm
 
 
Там от прямого ответа по сути уходят в сторону. Причем здесь славянские буквы, цифры, арабские буквы..
 
 
Начинать нужно смотреть с ответа EAN на слова:
 
 
//"...число 666 (три цифры 6). Каждый из вас легко может увидеть его на любом штрих-коде — две тоненькие параллельные линии, которые
 
несколько длиннее всех остальных и находятся всегда в начале, в    
 
середине и в конце штрих-кода
 
 
Для обсуждения этого утверждения..."//
 
 
(То есть больше чем с середины).
 
 
 
//"Первые "две тоненькие параллельные линии" называются ТИПОВОЙ
 
ЗНАК-ОГРАНИЧИТЕЛЬ и состоят из штриха-пробела-штриха, т.е. из трех
 
модулей (единиц размерности штрихового кода). Второй знак —
 
"ЦЕНТРАЛЬНЫЙ ЗНАК-ОГРАНИЧИТЕЛЬ" состоит из пробела-штриха-пробела-
 
штриха-пробела, т.е. из пяти модулей. И последним в символе EAN-13
 
повторяется ТИПОВОЙ ЗНАК-ОГРАНИЧИТЕЛЬ (пункт 4.4.1), состоящий из
 
штриха-пробела-штриха, т.е. из трех модулей://
 
 
Далее идет табл. 4.2...
 
 
 
Ясно, что различие между "ТИПОВЫМ ЗНАКОМ-ОГРАНИЧИТЕЛЕМ" и "ЦЕНТРАЛЬНЫМ ЗНАКОМ-ОГРАНИЧИТЕЛЕМ" чисто формальное. Можно, например,
 
сказать, что
 
 
"ЦЕНТРАЛЬНЫЙ ЗНАК-ОГРАНИЧИТЕЛЬ" состоит из:
 
 
1) пробела;
 
2) "ТИПОВОГО ЗНАКА-ОГРАНИЧИТЕЛЯ"
 
3) пробела.  
 
 
 
Пробелы слева и справа от ЦЕНТРАЛЬНОГО ЗНАКА ставятся на случай, чтобы
 
соседние штрихи, если они возникнут рядом с ЦЕНТРАЛЬНЫМ ЗНАКОМ -  ограничителем, НЕ "СЛИЛИСЬ" со штрихами САМОГО знака.
 
 
Так что можно считать, что в штрих коде фактически используется ТРИ ТИПОВЫХ ЗНАКА — ОГРАНИЧИТЕЛЯ : "штрих — пробел — штрих".  
 
 
Что, собственно, так и воспринимается глазом...
 
 
//А теперь рассмотрим способы кодирования цифры "шесть". В штриховых
 
кодах системы EAN/UCC действительно используются три набора знаков  
 
A, B и С. (В цитируемой нами публикации анонимный автор, вероятно  
 
для пущей важности, вместо русского слова "набор" использует
 
английское слово "сет" ). Тем не менее, в соответствии с требованиями
 
стандарта для изображения "шестерки" в виде штрихового кода используются следующие размерности пробелов (обозначение П ) и штрихов
 
(обозначение Ш)://
 
 
Далее идет таблица 4.1...
 
 
........A...........B..........C
 
 
......П.Ш.П.Ш....П.Ш.П.Ш....Ш.П.Ш.П
 
 
6     1 1 1 4    4 1 1 1    1 1 1 4
 
 
——————————————————-
 
 
 
Сравниваем с таблицей, приведенной Евгением в сообщениях 3602/60082;  3602/60090:
 
  
 
.....A.......B.......C
 
6 0101111 0000101 1010000
 
 
 
Ясно, что это и есть тоже самое при условиях: "0 — это пробел",
 
"1 — это штрих".
 
 
Например, для первого числа в табличке 4.1 ("1114")
 
 
пробел (1 штука) — штрих (1 штука) — пробел (1 штука) — штрихи ( 4 штуки):
 
 
0.....................1................0.................1111
 
 
Все вместе: 0101111.
 
 
Тоже самое можно проделать и для второго, и для третьего столбца.
 
 
 
Далее идет картинка:
 
 
// m3.gif //
 
 
И надпись "каждая шестерка состоит из семи модулей"...
 
 
Очевидно, что любое число, ЕСЛИ ЕГО ИЗОБРАЖАТЬ в данном наборе СИМВОЛОВ на штрих-коде, будет состоять из 7 "модулей". Модуль — это
 
либо штрих, либо пробел.
 
 
Игнорируя пробелы СПРАВА от нарисованных на этом рисунке "шестерок",
 
получаем фактически теже ДВА ШТРИХА. Так что на рисунке от каждого из
 
них ТОЛЬКО просто изображены справа пустые места размером в учетверенный штрих. Очевидно, что этот рисунок воспроизведен для набора кодов ИЗ СТОЛБЦА "C" (соответствует 1010000).
 
 
Если изображать "шестерку" в кодировке столбца "B", то пустые места
 
каждый раз БУДУТ СЛЕВА от двух штрихов (соответствует 0000101).
 
 
Ясно, что какой бы мы вариант не брали, общим в нем остается
 
комбинация "101" или "штрих — пробел -штрих".
 
 
Теперь обратимся к таблице, которую привел Евгений.
 
 
0 0001101 0100111 1110010
 
1 0011001 0110011 1100110
 
2 0010011 0011011 1101100
 
3 0111101 0100001 1000010
 
4 0100011 0011101 1011100
 
5 0110001 0111001 1001110
 
6 0101111 0000101 1010000
 
7 0111011 0010001 1000100
 
8 0110111 0001001 1001000
 
9 0001011 0010111 1110100
 
 
 
Комбинация "101" или "штрих — пробел — штрих" встречается в "ЧИСТОМ ВИДЕ" для СРЕДНЕГО  СТОЛБЦА в ней только В ЕДИНСТВЕННОМ СЛУЧАЕ -
 
ДЛЯ ДЕСЯТИЧНОЙ ЦИФРЫ ШЕСТЬ.
 
 
Дело в том, что в двоичной системе ПРОБЕЛЫ СЛЕВА для числа абсолютно
 
НЕВАЖНЫ. ТОЖЕ САМОЕ есть и в десятичной системе.
 
 
Поясняю. Число 6:
 
 
6 =00006 =00000000000000006 =00000000000000000000000000000000006
 
 
Сколько пробелов не ставь слева от числа "6", оно все равно останется числом 6.
 
 
Так что и в коде из таблицы, приведенной Евгением, с точки зрения двоичной системы
 
 
0000101 = 000000000000000000000101 = 101.
 
 
То есть, хоть семь модулей, хоть сто семь, хотя три, но с точки зрения компьютера в двоичной системе — это "101".  
 
 
Но.... но ЧИСЛО "101" в двоичной системе ОЗНАЧАЕТ ИМЕННО  5!!!!!
 
 
А В НАБОРЕ СИМВОЛОВ EAN "101" с точки зрения двоичной системы означает ИМЕННО 6!!!
 
 
Чувствуете ПОДМЕНУ???
 
 
У автора кода было множество возможностей распределить 1 и 0 по разному для разных десятичных цифр, но он выбрал для цифры 6 ИМЕННО такое значение! Вероятность случайного выбора весьма мала (то есть то, что он сделал это случайно.)
 
 
Но более того, эту комбинацию "101" он внес в качестве разделителей
 
на сам штрих-код. То есть, две линии, разделенные одним пробелом в СООТВЕТСТВИИ С ПРИВЕДЕННОЙ ТАБЛИЦЕЙ КОДОВ EAN-13 означают именно
 
десятичную цифру ШЕСТЬ, не явно (тогда бы нужно рисовать пробелы  
 
слева или справа от двух штрихов для изображения шестерки в зависимости от варианта кода), а КОСВЕННО — СОГЛАСНО ЭТОЙ ТАБЛИЦЕ, приведенной  Евгением!!!
 
 
Вероятность случайного сочетания ОБОИХ СОБЫТИЙ — ЕЩЕ МНОГО МЕНЬШЕ.
 
Пока нет времени посчитать эту вероятность, но ясно — что она будет
 
маленькой. Если же вероятность случайного совпадения крайне мала,  
 
то значит, авторы кодов сделали это скорее всего НАМЕРЕННО, а значит
 
имели намерение ОСКОРБИТЬ христиан, для которых изображение числа "666" даже путем СООТВЕТСТВУЮЩЕГО ПОДБОРА СИМВОЛОВ В САМОМ КОДЕ,
 
и установлением СООТВЕТСТВИЯ между десятичной цифрой шесть и
 
комбинацией "штрих — пробел — штрих" в своих кодах.
 
 
Неприятный факт, к тому же, что десятичной цифре 6 поставлены в
 
соответствие "101" и "штрих-пробел-штрих" также и в ДРУГИХ АМЕРИКАНСКИХ КОДАХ, например, в "UPC A Character Set".
 
 
См., например, http://www.semiconductor.agilent.com/barcode/sg/Misc/upc.html
 
 
или
 
  
 
http://www.islapro.com/upc.htm
 
 
/Вероятно, анонимного автора смутили два штриха в изображении цифры
 
"шесть"? Но зачем же, не разобравшись, обвинять в тяжких грехах и  
 
штриховые коды, и людей, которые занимаются автоматической идентификацией?//
 
 
Что же, для этого есть очень веские основания!!!
 
 
Вероятность того, что это было сделано случайно,  крайне мала.
 
 
Значит, с большой степенью уверенности можно говорить, что кто — то из
 
американских составителей кода решил таким образом ПОШУТИТЬ.
 
 
Как "исправить" код — это вопрос отдельный. Например, вместо двух
 
удлиненных разделительных штрихов можно использовать ОДИН, и тогда
 
соответствие между этими штрихами и десятичным числом ШЕСТЬ ПРОПАДЕТ.
 
 
Можно и по-другому, создать систему кодов, НО УЖЕ В ХРИСТИАНСКОМ
 
СТИЛЕ, А НЕ "САТАНИНСКОМ". :-)
 
 
 
  
 
Я предлагаю:
 
 
1) Вместо ДВУХ разделительных линий ввести ТРИ — в честь Святой Троицы.
 
 
2) А набор символов сделать, например, таким:
 
 
0 0001101 0100111 1110010
 
1 0011001 0110011 1100110
 
2 0010011 0011011 1101100
 
3 0111101 0100001 1000010
 
4 0100011 0011101 1011100
 
5 0110001 0111001 1001110
 
6 0101111 0000101 1010000
 
7 0111011 0010001 1000100
 
8 0101011 0010101 1010100
 
9 0001011 0010111 1110100
 
 
Три удлиненные черточки будут соответствовать ВОСЬМЕРКЕ!!!
 
 
Это видно, например, из строчки, содержащей "8":
 
 
"8 0101011 0010101 1010100"
 
 
 
 
С уважением и любовью, Николай


Ответы и комментарии:


[Православная беседа] [Начало] [Написать ответ]