MIL-STD-1753 
Author Message
 MIL-STD-1753

I'd like to find out what is included in the MIL-STD-1753 f77
extensions.  In particular, the HP-UX manual -- which is the only
place I can find a list offhand -- says DO WHILE is included but
doesn't make it clear whether the `normal' DO ... ENDDO is.


Sun, 03 Sep 1995 01:58:53 GMT  
 MIL-STD-1753

   I'd like to find out what is included in the MIL-STD-1753 f77
   extensions.  In particular, the HP-UX manual -- which is the only
   place I can find a list offhand -- says DO WHILE is included but
   doesn't make it clear whether the `normal' DO ... ENDDO is.

I don't have 1753 anymore, but here is what I remember from it:

It does not include DO/ENDDO, but _does_ include ENDDO.  Is that
weird or what?

Basically, under 1753, ENDDO can be thought of as equivalent to CONTINUE
and is permitted as the labeled target of a DO loop:

        DO 10 I=1,10
            DO 10 J=1,10
10      END DO

From my experiments with VAX fortran way back when (before I started
writing GNU Fortran), it seems that the right way to handle this
semi-ambiguous definition of END DO (that is, 1753's use of ENDDO
as a synonym for CONTINUE in combination with other vendor's
use of ENDDO in combination with a non-label-targeted DO) is via
the following rule:

    If the END DO is labeled with the target of any DO loop (as in
    the above example), treat it as if it were CONTINUE (i.e. it ends
    all the loops targeting that label, but never any non-target-
    labeled DOs).  Else, it ends exactly one non-target-labeled DO.

For example:

        DO I=1,10
        DO 10 J=1,10
        DO 10 K=1,10
        DO L=1,10
        ...
20      END DO  ! ends DO L
10      END DO  ! ends DO K and DO J
30      END DO  ! ends DO I

(Labels 20 and 30 inserted to confuse the reader.  :-)

I think the idea of 1753's END DO was simply to offer a way for
programmers to document their terminating labels with something
other than CONTINUE and an extra comment line (remember that "! foo"
is nonstandard).

I'm not sure whether 1753 permitted or forbade END DO as a synonym
for CONTINUE in a context other than as a labeled target of a target-
labeled DO.  I think it forbade that (otherwise there would be
ambiguity -- a 1753 program could be ambiguous with respect to a
program written to use the popular DO/ENDDO extension).
--





Sun, 03 Sep 1995 19:19:24 GMT  
 MIL-STD-1753

: >I'd like to find out what is included in the MIL-STD-1753 f77
: >extensions....
:
: Yes;  in fact, where can one obtain a copy of this standard?

According to my copy, MIL-STD-1753, 9 November 1978, is available from
the Department of Defense, HQ, US Air Force/ACDX, Washington, DC 20330

The document is fairly thin -- 8 pages.  In summary, the following items
are included:

        END DO Statement - but if "used as the terminal of an ANSI X3.9-1978
                DO statement, the END DO must be labeled." I don't see
                how it buys you anything with this restriction.
        DO WHILE - DO [label [,]] WHILE (logical expression), which must
                must terminated by its own END DO
        INCLUDE
        IMPLICIT Statement: IMPLICIT NONE (No other IMPLICIT statement
                is referenced, although the MIL-STD acts like there are
                other forms.)
        READ and WRITE past End-of-File
        Bit Field Manipulations
                Binary Pattern Processing
                        Logical Operations (Functions)
                                IOR(m,n) (Inclusive OR)
                                IAND(m,n)
                                NOT(m) (Complement)
                                IEOR(m,n) (Exclusive OR)
                        Shift Operations
                                ISHFT(m,k) (Logical)
                                ISHFTC(m,k,ic) (Circular)
                Bit Subfields
                        IBITS(m,i,len) (Bit Extraction)
                        CALL MVBITS(m,i,len,n,j) (Bit Move)
                Bit Processing
                        BTEST(n,i) (Bit Testing)        
                        IBSET(n,i) (Set Bit)
                        IBCLR(n,i) (Clear Bit)
                Bit Constants
                        O'dddddddd'  (Octal)
                        Z'hhhhhhhh'  (Hexadecimal)

Hope this helps.  If you have a FAX number, I'll be glad to fax a copy
to the above two requestors.
---------------------------------------------------------------------------
---------------------------------------------------------------------------
William M. Cornette         Photon Research Associates, Inc.
(619) 455-9741              10350 N. Torrey Pines Road, Suite 300
FAX (619) 455-0658          La Jolla, California  92037

---------------------------------------------------------------------------
T.A.N.S.T.A.A.F.L.



Mon, 04 Sep 1995 01:08:51 GMT  
 
 [ 3 post ] 

 Relevant Pages 

1. MIL-STD 1753 URL

2. MIL-STD-1753 pointer?

3. MIL-STD-1753

4. MIL-STD-1753 ?

5. Mil-Std-1753

6. MIL-STD-1753

7. MIL-STD-973 & MIL-STD-498 issue

8. MIL SPEC 1753

9. MIL SPEC 1753, standards, extensions

10. Should MIL-STD-498 replace DOD-STD-2167A?

11. Does labview have the capability of MIL-STD-1553 Communications

12. Does labview have the capability of MIL-STD-1553 Communications

 

 
Powered by phpBB® Forum Software