Convert real to string of bits.
It is assumed that R8P is represented by means of 64 bits, but this is not ensured in all architectures.
use penf
print "(A)", bstr(n=1._R8P)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=R8P), | intent(in) | :: | n | Real to be converted. |
Returned bit-string containing input number.
elemental function bstr_R8P(n) result(bstr)
!< Convert real to string of bits.
!<
!< @note It is assumed that R8P is represented by means of 64 bits, but this is not ensured in all architectures.
!<
!<```fortran
!< use penf
!< print "(A)", bstr(n=1._R8P)
!<```
!=> 0000000000000000000000000000000000000000000000001111000000111111 <<<
real(R8P), intent(in) :: n !< Real to be converted.
character(64) :: bstr !< Returned bit-string containing input number.
integer(I1P) :: buffer(8) !< Transfer buffer.
buffer = transfer(n, buffer)
write(bstr, '(8B8.8)') buffer
endfunction bstr_R8P