|
▼ばんさん:
>>仮に 200 だとすると
>>(200-185)*1092 + 638 = 17018 時間
>>
>>如何でしょうか?どちらが近いかというと後者ですよね?
>
>2005年に購入以来電源入れっぱなしなので
>どちらかと言えば後者ですね
ありがとうございます。
次のバージョンでは、現在の値の初期値が 253, 200, 100 の 3 種類が存在するものと仮定して以下のように行うことにしました。Maxtor は Seagate に買収されてしまったので、サイトには技術資料があまりありませんし、新品を入手するのも今後難しくなっていくと思います。何より、最新 HDD は単位が『分』ではなく『時間』になっているようなので、この問題は発生しないのですが。
if(200 < currentValue && currentValue <= 253)
{
return ((253 - currentValue) * 65536 + rawValue) / 60;
}
else if(100 < currentValue && currentValue <= 200)
{
return ((200 - currentValue) * 65536 + rawValue) / 60;
}
else if(currentValue <= 100)
{
return ((100 - currentValue) * 65536 + rawValue) / 60;
}
else
{
return rawValue / 60;
}
|
|