O arredondamento da D-Link - Isso está realmente acontecendo?

0

Alguns compartimentos de armazenamento D-Link se comportam de maneira extremamente estranha com carimbos de data / hora (NTFS).

Aqui está uma amostra rápida de alguns experimentos que fiz:

08:00:01.562 rounds to 08:00:01.000
08:00:01.633 rounds to 08:00:02.000
08:00:02.556 rounds to 08:00:03.000

Estou realmente intrigado com o 01.562 arredondando enquanto 01.633 arredonda ...

Você consegue entender o que está acontecendo aqui?

PS: Aqui está uma tabela extra, se ajudar.

Input           Output          Nearest second  FAT rounding
08:00:00.000    08:00:00.000    08:00:00.000    08:00:00.000
08:00:00.071    08:00:00.000    08:00:00.000    08:00:02.000
08:00:00.142    08:00:00.000    08:00:00.000    08:00:02.000
08:00:00.213    08:00:00.000    08:00:00.000    08:00:02.000
08:00:00.284    08:00:00.000    08:00:00.000    08:00:02.000
08:00:00.355    08:00:00.000    08:00:00.000    08:00:02.000
08:00:00.426    08:00:00.000    08:00:00.000    08:00:02.000
08:00:00.497    08:00:00.000    08:00:00.000    08:00:02.000
08:00:00.568    08:00:01.000    08:00:01.000    08:00:02.000
08:00:00.639    08:00:01.000    08:00:01.000    08:00:02.000
08:00:00.710    08:00:01.000    08:00:01.000    08:00:02.000
08:00:00.781    08:00:01.000    08:00:01.000    08:00:02.000
08:00:00.852    08:00:01.000    08:00:01.000    08:00:02.000
08:00:00.923    08:00:01.000    08:00:01.000    08:00:02.000
08:00:00.994    08:00:01.000    08:00:01.000    08:00:02.000
08:00:01.065    08:00:01.000    08:00:01.000    08:00:02.000
08:00:01.136    08:00:01.000    08:00:01.000    08:00:02.000
08:00:01.207    08:00:01.000    08:00:01.000    08:00:02.000
08:00:01.278    08:00:01.000    08:00:01.000    08:00:02.000
08:00:01.349    08:00:01.000    08:00:01.000    08:00:02.000
08:00:01.420    08:00:01.000    08:00:01.000    08:00:02.000
08:00:01.491    08:00:01.000    08:00:01.000    08:00:02.000
08:00:01.562    08:00:01.000    08:00:02.000    08:00:02.000
08:00:01.633    08:00:02.000    08:00:02.000    08:00:02.000
08:00:01.704    08:00:02.000    08:00:02.000    08:00:02.000
08:00:01.775    08:00:02.000    08:00:02.000    08:00:02.000
08:00:01.846    08:00:02.000    08:00:02.000    08:00:02.000
08:00:01.917    08:00:02.000    08:00:02.000    08:00:02.000
08:00:01.988    08:00:02.000    08:00:02.000    08:00:02.000
08:00:02.059    08:00:02.000    08:00:02.000    08:00:04.000
08:00:02.130    08:00:02.000    08:00:02.000    08:00:04.000
08:00:02.201    08:00:02.000    08:00:02.000    08:00:04.000
08:00:02.272    08:00:02.000    08:00:02.000    08:00:04.000
08:00:02.343    08:00:02.000    08:00:02.000    08:00:04.000
08:00:02.414    08:00:02.000    08:00:02.000    08:00:04.000
08:00:02.485    08:00:02.000    08:00:02.000    08:00:04.000
08:00:02.556    08:00:03.000    08:00:03.000    08:00:04.000
08:00:02.627    08:00:03.000    08:00:03.000    08:00:04.000
08:00:02.698    08:00:03.000    08:00:03.000    08:00:04.000
08:00:02.769    08:00:03.000    08:00:03.000    08:00:04.000
    
por Clément 27.05.2011 / 20:28

2 respostas

0

Este parece ser um bug, corrigido nos últimos compartimentos do DLink NAS.

    
por 29.12.2011 / 18:59
1

Pode ser apenas olhar para o .5 e fazer um arredondamento par / ímpar. Isso ajuda a manter as coisas um pouco sensatas para adição.

Digamos que você tenha 1,5 e 2,5. Se você adicioná-los diretamente, você recebe 1,5 + 2,5 = > 4.0. Mas ... se você rodar com normal "> = .5 sobe" então você terá 2.0 + 3.0, e você terá 5.0.

Permite alterar a regra um pouco. Se você estiver arredondando n.m para inteiro, você pode ter uma regra para .5 que inclua n . Para n.5 , se n for par, você arredonda como normal. Se n for ímpar, você arredonda para baixo. Então, para 1.5, você arredonda para 1. Para 2.5, você arredonda (como normal) para 3. 1.0 + 3.0 = 4.0, como você esperaria.

    
por 27.05.2011 / 23:23