Web上で提供されるサービスが増えるに従い、パスワードを入力する機会も増えてきました。それもITギークに限らず、スマホを持っている一般人すべてに関してです。そこで次のような「助言」がよく聞かれるようになってきました。
「パスワードを使いまわしてはいけない」
「パスワードには大文字、小文字、数字、記号などを混ぜたほうが良い」
「パスワードは定期的に変えたほうが良い」
「パスワードは紙などにメモしてはいけない」
「パスワードマネージャを使えば複数のパスワードを覚える労力から開放される」
「100%安全な管理方法はないので、クラウドによる管理が心配でも妥協するしかない」
でも本当にそうでしょうか?真剣に考えてみたらこれらに同意できるでしょうか?というのが今日のお題です。
2016年6月18日土曜日
2014年9月7日日曜日
JISの最近接偶数への丸め(JIS Z8401-1999)について
今日はちょっと専門的な話ですが、数値の丸め処理についての記事です。
数値の丸めといいますと、12.34を小数点以下第1位まで丸めて12.3にするような操作で、四捨五入がおなじみですが、実はJISに規定があり、四捨五入は最善の方法とはされていません。
JISの決まりでは、偶数丸めといわれる、あまりなじみのない丸め方法を使うことになっています。
偶数丸めは、有効桁の一つ下の、丸めたい桁以下が50000…であるときの挙動以外は、四捨五入と同じです。有効桁より下が50000…であった場合は、その上の桁が偶数であれば切り上げられ、奇数であれば切り下げられます。
たとえば、小数点以下を丸める場合、以下のようになります。
1.5 -> 2
2.5 -> 2
3.5 -> 4
4.5 -> 4
5.5 -> 6
JISの規格では、この偶数丸めを「規則A」、おなじみの四捨五入を「規則B」としており、「規則Aが一般的には望ましい。」としています。なぜなら、「一連の測定値をこの方法で処理すると丸めによる誤差が最小になるという特別な利点がある。」だそうです。
なるほど、と納得しかけますが、何か腑に落ちません。確かに、四捨五入は大きな数値へかたよる方向への丸めですが、偶数に丸めるなどという恣意的な手段が本当に最適なのでしょうか。
数値の丸めといいますと、12.34を小数点以下第1位まで丸めて12.3にするような操作で、四捨五入がおなじみですが、実はJISに規定があり、四捨五入は最善の方法とはされていません。
JISの決まりでは、偶数丸めといわれる、あまりなじみのない丸め方法を使うことになっています。
偶数丸めは、有効桁の一つ下の、丸めたい桁以下が50000…であるときの挙動以外は、四捨五入と同じです。有効桁より下が50000…であった場合は、その上の桁が偶数であれば切り上げられ、奇数であれば切り下げられます。
たとえば、小数点以下を丸める場合、以下のようになります。
1.5 -> 2
2.5 -> 2
3.5 -> 4
4.5 -> 4
5.5 -> 6
JISの規格では、この偶数丸めを「規則A」、おなじみの四捨五入を「規則B」としており、「規則Aが一般的には望ましい。」としています。なぜなら、「一連の測定値をこの方法で処理すると丸めによる誤差が最小になるという特別な利点がある。」だそうです。
なるほど、と納得しかけますが、何か腑に落ちません。確かに、四捨五入は大きな数値へかたよる方向への丸めですが、偶数に丸めるなどという恣意的な手段が本当に最適なのでしょうか。
登録:
投稿 (Atom)