I don't know if you have the rs500 on your pc but this is good info from the help files...don't try and make them harder then what they are. They are what they say...
IIM:
Description
This output instruction allows you to update data prior to the normal input scan. When the IIM instruction is enabled, the program scan is interrupted. Data from a specified I/O slot is transferred through a mask to the input data file. This makes the data available to instructions following the IIM instruction in the ladder program.
The IIM operates on the inputs assigned to a particular word of a slot (16 bits maximum). For the mask, a (1) in an input’s bit position passes data from the source to the destination. A (0) inhibits data from passing from the source to the destination.
Note Expansion I/O is not permitted with the IIM instruction.
Entering Parameters
Slot - Identify the slot and word here that contains the data to be passed. If the word is 0 it does not have to be specified.
Examples: I:2 means inputs of slot 2 word 0. I:4.1 means input word 1 in slot 4.
Fixed and SLC 5/01 controllers can have up to 8 words associated with the slot. The SLC 5/02, 5/03, 5/04, 5/05 and MicroLogix 1500 controllers can have up to 32 words associated with the slot (0-31).
For MicroLogix 1000 controllers specify I1:0.0. For 16 I/O controllers I1:0/0-9 are valid and I1:0/10-15 are considered unused inputs. (They do not physically exist.) For 32 I/O controllers, I1:0/0-15 and I1:1/0-3 are valid. Specify I1:1 if you want to immediately update the last four input bits.
Mask - Specify a constant or register address. You can enter the constant in binary, decimal, or hexadecimal. RSLogix 500 will make any necessary conversion and display the hexadecimal value. Click here for an example showing how to enter the Mask value using hexadecimal, binary, or decimal values.
Length - (5/03, 5/04, 5/05, and MicroLogix 1200 and 1500 only) Used to transfer more than one word per slot.
IOM:
This output instruction allows you to update outputs prior to the normal output scan. When the IOM instruction is enabled, the program scan is interrupted to transfer data to a specified I/O slot through a mask. The program scan then resumes.
The IOM operates on the physical outputs assigned to a particular word of a slot (16 bits maximum). For the mask, a (1) in an output’s bit position passes data from the source to the destination. A (0) inhibits data from passing from the source to the destination.
Note Expansion I/O is not permitted with the IOM instruction.
Entering Parameters
Slot - Identify the slot and word containing the data to be passed. If the word is 0 it does not have to be specified.
For example: O:2 means outputs of slot 2 word 0. O:1.1 means output word 1 in slot 1.
Fixed and SLC 5/01 controllers can have up to 8 words associated with the slot. The SLC 5/02, 5/03, 5/04, 5/05, and MicroLogix 1500 controllers can have up to 32 words associated with the slot (0-31).
For MicroLogix 1000 controllers specify O0:0.0. For 16 I/O controllers O0:0/0-5 are valid and O0:0/6-15 are considered unused outputs. (They do not physically exist.) For 32 I/O controllers, O0:0/0-11 are valid and O0:0/12-15 are considered unused outputs.
Mask - Specify a constant or register address. You can enter the constant in binary, decimal, or hexadecimal. RSLogix 500 will make any necessary conversion and display the hexadecimal value. Click here for an example showing how to enter the Mask value using hexadecimal, binary, or decimal values.