Đầu tiên, đây không phải là câu hỏi về độ chính xác hoặc bất kỳ thứ gì như thế.Biểu thị số nhị phân
Câu hỏi của tôi là, trình biên dịch quyết định cách trình bày một số?
Hãy lấy C chẳng hạn. Tôi viết
double d = 4.5632;
Làm thế nào để chọn biểu diễn nhị phân? Tôi biết nó không đại diện chính xác, vì vậy làm thế nào nó chọn số đại diện gần nhất? Nó được thực hiện tại thời gian biên dịch? Nó được thực hiện bởi CPU hay hệ điều hành?
Vui lòng chỉ trả lời nếu bạn biết điều này xảy ra như thế nào, câu trả lời như "đừng lo lắng về điều đó" không hữu ích. Ngoài ra, "nó phụ thuộc vào nền tảng" cũng không hữu ích, bạn có thể chọn một nền tảng và giải thích cho điều đó.
Máy tính không "chọn" biểu diễn nhị phân - nhà thiết kế phần cứng và nhà văn biên dịch làm. Hãy xem [tiêu chuẩn này] (http://en.wikipedia.org/wiki/IEEE_754-2008). – dasblinkenlight