"Причина, по которой я спрашиваю это здесь
ТАК, потому что я бы очень хотел
либо попробуйте включить
человекочитаемый год / месяц там или
закодировать некоторую часть информации о
исходный компьютер или оба. "
Позвольте мне начать с того, что я уже имел дело с этим, и попытка сохранить полезную информацию в серийный номер - ПЛОХАЯ идея в долгосрочной перспективе. Серийный номер устройства должен быть бессмысленным. Также как первичный ключ записи в базе данных должен быть бессмысленным.
В тот момент, когда вы начинаете пытаться вставить реальные данные в свой серийный номер, вы просто добавляете в него BUSINESS LOGIC и будете вынуждены поддерживать их, как любой другой фрагмент кода. Будущее тебя будет ненавидеть мимо тебя. Поверь мне в этом. ; О)
Если вы попытаетесь сохранить значения даты / времени, то вы потеряете числовое пространство с недопустимыми временем / датами. Например, у вас никогда не будет ничего больше 12 в поле месяца.
Прямой счетчик времени / единицы времени был бы лучше, но для машины, которая генерирует только несколько идентификаторов в минуту, вы все равно будете тратить много места.
12 цифр не много места. Посмотрите на страницу VIN в Википедии. Места только для нескольких производителей, всего несколько тысяч автомобилей. Теперь они повторно используют VIN, потому что им не хватило места, упаковав в него смысл.
http://en.wikipedia.org/wiki/VIN
Это не означает, что ВСЕ значения в серийном номере плохие, просто держите его строго ограниченным, чтобы убедиться, что числа не совпадают.
Как то так ...
- Позиция 1-3: 999 Машины
- Позиция 4-12: порядковые номера
Это ALL , вам нужно избегать столкновений. Если вы добавляете цифру местоположения, вы попадаете в 11 мест.
Извините, если это звучит как напыщенная речь. Я много занимаюсь производством электроники и различных обрабатываемых деталей. Он никогда не заканчивался долгое время, если не было доступно много свободного пространства или вторичного тега (который -wow- обеспечивает необходимое пространство идентификаторов, упомянутое ранее)