Main Page | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

bitops.h File Reference

Internal Interface: H8/300 bit operations. More...

Go to the source code of this file.

Defines

#define ASMCONST   const
#define bit_set(byte, bit)   __asm__ ASMCONST ( "bset %0,@%1\n" : : "i" (bit),"r" (byte))
 set a single bit in memory
#define bit_clear(byte, bit)   __asm__ ASMCONST ( "bclr %0,@%1\n" : : "i" (bit),"r" (byte))
 clear a single bit in memory
#define bit_load(mask, bit)   __asm__ ASMCONST ( "bld %0,%1l\n" : : "i" (bit),"r" (mask):"cc")
 load a single bit from a mask to the carry flag
#define bit_iload(mask, bit)   __asm__ ASMCONST ( "bild %0,%1l\n" : : "i" (bit),"r" (mask):"cc")
 load the inverse of a single bit from a mask to the carry flag
#define bit_store(byte, bit)   __asm__ ASMCONST ( "bst %0,@%1\n" : : "i" (bit),"r" (byte))
 store the carry flag to a single single bit in memory


Detailed Description

Internal Interface: H8/300 bit operations.

Author:
Markus L. Noga <markus@noga.de>

Definition in file bitops.h.


Define Documentation

#define ASMCONST   const
 

Definition at line 45 of file bitops.h.

#define bit_clear byte,
bit   )     __asm__ ASMCONST ( "bclr %0,@%1\n" : : "i" (bit),"r" (byte))
 

clear a single bit in memory

((char*)byte)&=~(1<<bit)

Definition at line 65 of file bitops.h.

#define bit_iload mask,
bit   )     __asm__ ASMCONST ( "bild %0,%1l\n" : : "i" (bit),"r" (mask):"cc")
 

load the inverse of a single bit from a mask to the carry flag

carry=mask & inverse of (1<<bit)

Definition at line 77 of file bitops.h.

#define bit_load mask,
bit   )     __asm__ ASMCONST ( "bld %0,%1l\n" : : "i" (bit),"r" (mask):"cc")
 

load a single bit from a mask to the carry flag

carry=mask & (1<<bit)

Definition at line 71 of file bitops.h.

#define bit_set byte,
bit   )     __asm__ ASMCONST ( "bset %0,@%1\n" : : "i" (bit),"r" (byte))
 

set a single bit in memory

*((char*)byte)|=(1<<bit)

Definition at line 59 of file bitops.h.

#define bit_store byte,
bit   )     __asm__ ASMCONST ( "bst %0,@%1\n" : : "i" (bit),"r" (byte))
 

store the carry flag to a single single bit in memory

*((char*)byte)= ( (*((char*)byte)) & (~(1<<bit)) ) | (carry<<bit)

Definition at line 83 of file bitops.h.


Generated on Fri Feb 25 08:02:43 2005 for brickos by  doxygen 1.3.9.1