I got curious and did an experiment. I first found 4 decimal place factors for MPH to KPH and reverse. Then I setup a spreadsheet with 25, 30 and 35 MPH numbers. I converted them to KPH and then back to MPH using the Round function. They converted there and back and were still good numbers. Then I repeated the calculations using the Int function which, as I suspected, truncates rather than rounding. I got back 24, 29 and 34 MPH. Ahah! I changed the KPH to 1 more than the converted number and they converted back just fine with the Int function.
Then I fired up my 920 and changed the measurements to KPH and corrected the speed on a nearby street to 41 KPH. I planned a short run on that street and ran a demo and found that the speed had been stored as 40 KPH rather than the 41 I had entered. Needless to say, when I changed the measurements back to MPH and ran the demo again it was 24 MPH. It appears that KPH is rounded to 5 MPH increments and the conversion back to MPH truncates rather than rounding. So it is not the poor little pea brain of the 920, it is the poor little pea brain of the programmer.
Then I fired up my 920 and changed the measurements to KPH and corrected the speed on a nearby street to 41 KPH. I planned a short run on that street and ran a demo and found that the speed had been stored as 40 KPH rather than the 41 I had entered. Needless to say, when I changed the measurements back to MPH and ran the demo again it was 24 MPH. It appears that KPH is rounded to 5 MPH increments and the conversion back to MPH truncates rather than rounding. So it is not the poor little pea brain of the 920, it is the poor little pea brain of the programmer.