Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Ведущий нуль является любой 0 цифрой , которая приходит перед первой ненулевой цифрой в номере строке в позиционной системе счисления . [1] Например, знаменитый идентификатор Джеймса Бонда 007 имеет два ведущих нуля. [2] Когда ведущие нули занимают старшие разряды целого числа , они могут быть оставлены пустыми или опущены для того же числового значения. [3] Следовательно, обычная десятичная запись целых чисел не использует начальные нули, за исключением самого нуля , который в противном случае обозначался бы как пустая строка .[4] Однако в десятичных дробях строго между -1 и 1, начальные нули цифры между десятичной запятой и первой ненулевой цифрой необходимы для передачи величины числа и не могут быть опущены, [1] а конечные нули - нули встречающиеся после десятичной точки и после последней ненулевой цифры - могут быть опущены без изменения значения.

Происшествие [ править ]

Часто ведущие нули встречаются на неэлектронных цифровых дисплеях или на таких электронных, как семисегментные дисплеи , которые содержат фиксированные наборы цифр. Эти устройства включают в себя ручные счетчики, секундомеры , [5] одометров , [6] и цифровые часы . [5] Начальные нули также генерируются многими старыми компьютерными программами при создании значений для присвоения новым записям, счетам и другим файлам, и как таковые, вероятно, будут использоваться системами выставления счетов за коммунальные услуги, информационными системами кадровых ресурсов и государственными базами данных. Множество цифровых фотоаппаратов и другие устройства записи электронных носителей используют начальные нули при создании и сохранении новых файлов для создания имен одинаковой длины.

Начальные нули также присутствуют всякий раз, когда количество цифр технически фиксировано (например, в регистре памяти ), но сохраненное значение недостаточно велико, чтобы получить ненулевую старшую значащую цифру . [7] Операция подсчета начальных нулей эффективно определяет количество начальных нулевых битов в машинном слове . [8]

В рулетке в Соединенных Штатах Америки начинается ноль , где «00» отличается от «0» (ставка на «0» не будет выигрышной, если шарик приземлится в «00», и наоборот). Виды спорта, в которых есть номера спортсменов, также следуют за этим; серийный автомобиль пронумерованный «07» будет считаться отличным друг от пронумерованного «7». Бенито Сантьяго , ловец бейсбола Высшей лиги, который носил номер 09 в течение нескольких лет, является единственным игроком крупной профессиональной спортивной лиги , который использует номер на майке.с ведущим нулем, не считая тех, кто носил номер 00 (в случае Сантьяго, Высшая лига бейсбола не отличила его номер 09 от обычного числа 9; он носил дополнительный ноль, чтобы избежать осложнений с подушечками улавливателя, позволяя спине ремешок для перехода между числами, а не над одной цифрой 9). Чаще всего это встречается с однозначными числами.

Преимущества [ править ]

Сопоставление

Начальные нули используются для того, чтобы порядок возрастания чисел соответствовал алфавитному порядку : например, 11 идет в алфавитном порядке перед 2, но после 02. (См., Например, ISO 8601. ) Это не работает с отрицательными числами , однако, независимо от того, являются ли ведущие нули используется или нет: -23 идет в алфавитном порядке после -01, -1 и -22, хотя это меньше, чем все из них.

Предотвращение ошибок

Начальные нули в предложении также снижают вероятность того, что невнимательный читатель пропустит десятичную точку. Например, в современной аптеке существует широко распространенное соглашение, согласно которому при назначении лекарств нельзя опускать ведущие нули в любой дозе или ее значении . Точно так же, как начальные нули являются обязательными, конечные нули запрещены. В обоих случаях причина одна и та же: предотвратить неправильное прочтение и, как следствие, неправильную дозу на один или несколько порядков .

Предотвращение мошенничества

Начальные нули также можно использовать для предотвращения мошенничества, заполняя позиции символов, которые обычно могут быть пустыми. Например, добавление ведущих нулей к сумме чека (или аналогичного финансового документа) затрудняет мошенникам изменение суммы чека перед его предъявлением к оплате.

Ноль в качестве префикса [ править ]

Префикс 0используется в C , чтобы указать строковые представления восьмеричных чисел, в соответствии с требованиями ANSI C стандартом для функции «strtol» (The ул ING к л Ong целого преобразователя) в «stdlib.h» библиотеке. Многие другие языки программирования, такие как Python , Perl , Ruby , PHP и bash оболочки Unix, также следуют этой спецификации для преобразования строк в числа. Например, " 0020" не представляет 20 10 ( 2 × 10 1 + 0 × 10 0), а скорее 20 8  = 16 10 ( 2 × 8 1  + 0 × 8 0  = 1 × 10 1  + 6 × 10 0 ). Десятичные числа, записанные с начальными нулями, будут интерпретироваться как восьмеричные языки, которые следуют этому соглашению, и будут генерировать ошибки (а не только неожиданные результаты), если они содержат «8» или «9», поскольку эти цифры не существуют в восьмеричном формате. Такое поведение может быть довольно неприятным при работе с последовательностями строк со встроенными десятичными дробями с нулями. числа (обычно имена файлов) для облегчения сортировки по алфавиту (см. выше) или при проверке входных данных от пользователей, которые не знали, что добавление начального нуля запускает это базовое преобразование.

См. Также [ править ]

  • Конечный ноль
  • 00 (значения)
  • Ведущая цифра

Ссылки [ править ]

  1. ^ a b Миллер, Джейн Э. (2008), Чикагское руководство по написанию о числах , University of Chicago Press, стр. 276, ISBN 9780226526324.
  2. ^ Лафор, Роберт В. (1987), Microsoft C: программирование для IBM , HW Sams, стр. 294 , ISBN 9780672225154.
  3. ^ Зегарелли, Марк (2014), Учебное пособие по основам математики и предалгебры для чайников (2-е изд.), John Wiley & Sons, стр. 8, ISBN 9781118828304.
  4. ^ Флинт, Клиф (2012), Tcl / Tk: Руководство разработчика , Elsevier, стр. 752–753, ISBN 9780123847171.
  5. ^ a b Грин, Дженнифер; Стеллман, Эндрю (2013), Head First C # , O'Reilly Media, Inc., стр. 770, ISBN 9781449358884.
  6. ^ Дук, Роберт; Рид, Кен (2011), Цифровая электроника , Cengage Learning, стр. 48, ISBN 9781133708964.
  7. ^ Kuc, Роман (1999), Век цифровой информации: введение в электротехнику , PWS Pub. Co., стр. 67 , ISBN 9780534953157.
  8. ^ Дандамуди, Сиварама П. (2005), Руководство по процессорам RISC: для программистов и инженеров , Springer, стр. 139, ISBN 9780387274461.