home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / sml_nj / 93src.lha / src / mips / endian.sml < prev    next >
Encoding:
Text File  |  1993-01-27  |  556 b   |  26 lines

  1. (* Copyright 1991 by AT&T Bell Laboratories *)
  2. structure LittleEndian : ENDIAN = 
  3.     struct
  4.     val >> = Bits.rshift
  5.     val &  = Bits.andb
  6.     infix >> &
  7.  
  8.     val order_real = implode o rev o explode
  9.     val low_order_offset = 0
  10.     fun wordLayout (hi,lo) =
  11.           (lo & 255, (lo >> 8) & 255, hi & 255, (hi >> 8) & 255)
  12.     end
  13.  
  14. structure BigEndian : ENDIAN = 
  15.     struct
  16.     val >> = Bits.rshift
  17.     val &  = Bits.andb
  18.     infix >> &
  19.  
  20.     fun order_real x = x
  21.     val low_order_offset = 1
  22.     fun wordLayout (hi,lo) =
  23.           ((hi >> 8) & 255, hi & 255, (lo >> 8) & 255, lo & 255)
  24.     end
  25.  
  26.