bstr_R4P Function

private elemental function bstr_R4P(n) result(bstr)

Convert real to string of bits.

 use penf
 print "(A)", bstr(n=1._R4P)

Arguments

TypeIntentOptionalAttributesName
real(kind=R4P), intent(in) :: n

Real to be converted.

Return Value character(len=32)

Returned bit-string containing input number.


Called by

proc~~bstr_r4p~~CalledByGraph proc~bstr_r4p bstr_R4P interface~bstr bstr interface~bstr->proc~bstr_r4p program~volatile_doctest~57 volatile_doctest program~volatile_doctest~57->interface~bstr program~volatile_doctest~27 volatile_doctest program~volatile_doctest~27->interface~bstr program~volatile_doctest~7 volatile_doctest program~volatile_doctest~7->interface~bstr program~volatile_doctest~29 volatile_doctest program~volatile_doctest~29->interface~bstr program~volatile_doctest~6 volatile_doctest program~volatile_doctest~6->interface~bstr program~volatile_doctest~60 volatile_doctest program~volatile_doctest~60->interface~bstr program~volatile_doctest~62 volatile_doctest program~volatile_doctest~62->interface~bstr

Contents

Source Code


Source Code

   elemental function bstr_R4P(n) result(bstr)
   !< Convert real to string of bits.
   !<
   !< @note It is assumed that R4P is represented by means of 32 bits, but this is not ensured in all architectures.
   !<
   !<```fortran
   !< use penf
   !< print "(A)", bstr(n=1._R4P)
   !<```
   !=> 00000000000000001000000000111111 <<<
   real(R4P), intent(in) :: n         !< Real to be converted.
   character(32)         :: bstr      !< Returned bit-string containing input number.
   integer(I1P)          :: buffer(4) !< Transfer buffer.

   buffer = transfer(n, buffer)
   write(bstr, '(4B8.8)') buffer
   endfunction bstr_R4P