View in color | View discussion [78 posts] | License |
Download script | History | Other scripts by: glennmlewis |
30-Apr 10:45 UTC
[0.056] 11.305k
[0.056] 11.305k
bin-to-float.rREBOL [
Library: [
level: 'beginner
platform: 'all
type: 'tool
domain: [compression extension math scientific text text-processing]
tested-under: none
support: none
license: 'lgpl
see-also: "ieee.r"
]
Title: "bin-to-float"
Description: "Binary series to IEEE-32 float series and back"
Date: 2006-11-07
Version: 0.0.3
Author: "Glenn M. Lewis"
File: %bin-to-float.r
Purpose: {Convert a binary file to a series of floats and back}
License: "GNU Lesser General Public License (Version 2.1)"
Comment: {Relies on 'ieee.r' script found at www.REBOL.org}
]
do %ieee.r
bin-to-float: func [
"Converts a binary series to a series of floats"
dat [binary!] "Binary data to be converted to floats"
/local result val
] [
result: copy []
for i ((length? dat) / 4) 1 -1 [
val: from-ieee skip dat (4 * i - 4)
insert result val
]
result
]
float-to-bin: func [
"Converts a series of floats to a binary series"
dat [series!] "Float series to be converted to binary"
/local result val
] [
result: copy #{}
for i (length? dat) 1 -1 [
val: to-ieee pick dat i
insert result val
]
result
] Notes
|