# CSMG

Portability Function: Performs an effective BIT-WISE store under mask.

## Module

USE IFPORT

result = CSMG (x,y,z)

x, y, z | (Input) INTEGER(4).

## Results

The result type is INTEGER(4). The result is equal to the following expression:

      (x & z) | (y & ~z )

where "&" is a bitwise AND operation, | - bitwise OR, ~ - bitwise NOT.

The function returns the value based on the following rule: when a bit in z is 1, the output bit is taken from x. When a bit in z is zero, the corresponding output bit is taken from y.

Parent topic: C to D