Copyright Digital Equipment Corp. All rights reserved.

Arguments

 

fixed-or-dynamic-input-string

   OpenVMS usage:char_string
   type:         character string
   access:       read only
   mechanism:    by descriptor, fixed-length or dynamic string

   Input string containing an ASCII text string representation of
   a numeric value that OTS$CVT_T_x converts to a D-floating, F-
   floating, G-floating, H-floating, IEEE S-floating, or IEEE T-
   floating value. The fixed-or-dynamic-input-string argument is the
   address of a descriptor pointing to the input string.

   The syntax of a valid input string is as follows:

   [blanks][+ or -][digits][.][digits][+ or -][digits]

      or

   [blanks][+ or -][digits][.][digits][ X ][digits]

      where X = {E e D d Q q}[blanks][+ or -]

   E, e, D, d, Q, and q are the possible exponent letters. They are
   semantically equivalent. Other elements in the preceding syntax
   are defined as follows:

   Term           Description

   blanks         One or more blanks
   digits         One or more decimal digits
 

floating-point-value

   OpenVMS usage:floating_point
   type:         D_floating, F_floating, G_floating, H_floating,
                 IEEE S_floating, IEEE T_floating
   access:       write only
   mechanism:    by reference

   Floating-point value that OTS$CVT_T_x creates when it converts
   the input string. The floating-point-value argument is the
   address of the floating-point value. The data type of floating-
   point-value depends on the called routine as shown in the
   following table:

   Routine          floating-point-value Data Type

   OTS$CVT_T_D      D-floating
   OTS$CVT_T_F      F-floating
   OTS$CVT_T_G      G-floating
   OTS$CVT_T_H      H-floating
   OTS$CVT_T_S      IEEE S-floating
   OTS$CVT_T_T      IEEE T-floating
 

digits-in-fraction

   OpenVMS usage:longword_unsigned
   type:         longword (unsigned)
   access:       read only
   mechanism:    by value

   Number of digits in the fraction if no decimal point is included
   in the input string. The digits-in-fraction argument contains the
   number of digits. If the number of digits is omitted, the default
   is zero.
 

scale-factor

   OpenVMS usage:longword_signed
   type:         longword (signed)
   access:       read only
   mechanism:    by value

   Scale factor. The scale-factor argument contains the value of
   the scale factor. If bit 6 of the flags-value argument is clear,
   the resultant value is divided by 10**scale-factor unless the
   exponent is present. If bit 6 of flags-value is set, the scale
   factor is always applied. If the scale factor is omitted, the
   default is zero.
 

flags-value

   OpenVMS usage:mask_longword
   type:         longword (unsigned)
   access:       read only
   mechanism:    by value

   User-supplied flags. The flags-value argument contains the user-
   supplied flags described in the following table:

   Bit  Action if Set         Action if Clear

   0    Ignore blanks.        Interpret blanks as zeros.
   1    Allow only E or e     Allow E, e, D, d, Q and q exponents.
        exponents. (This      (This is consistent with BASIC
        is consistent with    semantics.)
        Fortran semantics.)
   2    Interpret an          Do not interpret an underflow as an
        underflow as an       error.
        error.
   3    Truncate the value.   Round the value.
   4    Ignore tabs.          Interpret tabs as invalid characters.
   5    An exponent must      The exponent letter can be omitted.
        begin with a valid
        exponent letter.
   6    Always apply the      Apply the scale factor only if there
        scale factor.         is no exponent present in the string.

   If you omit the flags-value argument, OTS$CVT_T_x defaults all
   flags to clear.
 

extension-bits (D-, F-floating, IEEE S-floating)

   OpenVMS usage:byte_unsigned
   type:         byte (unsigned)
   access:       write only
   mechanism:    by reference
 

extension-bits (G-, H-floating, IEEE T-floating)

   OpenVMS usage:word_unsigned
   type:         word (unsigned)
   access:       write only
   mechanism:    by reference

   Extra precision bits. The extension-bits argument is the address
   of a word containing the extra precision bits. If extension-
   bits is present, floating-point-value is not rounded, and the
   first n bits after truncation are returned left-justified in this
   argument, as follows:

                    Number
                    of Bits
   Routine          Returned  Data Type

   OTS$CVT_T_D      8         Byte (unsigned)
   OTS$CVT_T_F      8         Byte (unsigned)
   OTS$CVT_T_G      11        Word (unsigned)
   OTS$CVT_T_H      15        Word (unsigned)
   OTS$CVT_T_S      8         Byte (unsigned)
   OTS$CVT_T_T      11        Word (unsigned)

   A value represented by extension bits is suitable for use as the
   extension operand in an EMOD instruction.

   The extra precision bits returned for H-floating may not be
   precise because OTS$CVT_T_H carries its calculations to only
   128 bits. However the error should be small.