Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- use std::mem;
- fn print(f: f32) {
- let i = unsafe { mem::transmute::<f32, i32>(f) };
- let s = format!("{:032b}", i);
- let sign: String = s.chars().take(1).collect();
- let exponent: String = s.chars().skip(1).take(8).collect();
- let mantisse: String = s.chars().skip(9).take(23).collect();
- println!("{} {} {}: {:.2}", sign, exponent, mantisse, f);
- }
- fn main() {
- for i in 1..10 {
- print(i as f32);
- print(-i as f32);
- }
- }
Add Comment
Please, Sign In to add comment