Làm cách nào để chuyển đổi một chuỗi thập lục phân sang tương đương int bit 32 bit của nó bằng ruby? ví dụchuỗi thập lục phân để chuyển đổi int đã ký trong Ruby
a = "fb6d8cf1" #hex string
[a].pack('H*').unpack('l') #from the documentation it unpacks to its 32 bit signed int
Nó chuyển đổi để
-242455045
Nhưng câu trả lời thực tế là
-76706575
Ông có thể chỉ cho tôi những gì tôi đang làm sai?
mã làm việc cho số âm. Cảm ơn. Nhưng nó không thành công cho số dương ví dụ như "038a67f90" được hiển thị dưới dạng 950435728 nhưng giá trị thực tế là 59402233 –