od 추가 값 인쇄 [끄기]

od 추가 값 인쇄 [끄기]

4바이트 부동 소수점 숫자가 포함된 이진 파일이 있습니다. 를 사용하여 이러한 부동 소수점 숫자를 인쇄하고 싶습니다 od. 그러나 od첫 번째 위치에는 추가 값이 인쇄됩니다. 여기서 무슨 일이 일어나고 있는 걸까요?

파일은 다음과 같습니다.

xxd test | head -1

0000000: 932a 6541 7cdf 6b41 6c7e 7141 d779 7641 .*eA|.kAl~qA.yvA

od이것을 인쇄하세요:

cat test | od -f -An -v -w4 | head -2

   14,322894
   14,742062

첫 번째 인쇄된 값(14.32)은 다음과 같습니다.아니요파일의 첫 번째 값입니다. 두 번째로 인쇄된 값(14.74)은 파일의 실제 첫 번째 값입니다. 여러 Hex Editor로 확인했습니다.

932a 6541

14.74206(또는 그에 매우 가까운 값)입니다. 그렇다면 od추가 가치(14.32)는 어디서 오는 걸까요? 이는 다른 모든 옵션이 생략된 경우에도 발생합니다.

cat test | od -f | head -2

0000000 14,322894 14,742062 15,093365 15,404746

0000020 15,652825 15,938543 16,25734 16,616056

답변1

od맞다. 내 예상 출력은 내가 선택한 것과 다른 부동 소수점 값을 표시하는 두 개의 16진수 편집기를 기반으로 합니다. @schily에게 감사드립니다. 처음 4바이트가 실제로 14.32를 나타낸다는 점을 지적하셨으니 맞습니다 od.

관련 정보