length compensation (plus, minus, cancel)
The G43 and G44 code words are used to adjust for length differences in the tool magazine. Applying these codes changes the effective Z=zero level of the part so that each tool touches off at the same place. The length of each tool has to be set up in a controller memory address. The program block calls for the length compensation and describes where that data is stored using the H word.
Example
N1000 G43 H3 (#3 is just one of many memory locations)
Whatever value is stored in location #3 is added to the "distance to go" from tool change position to Z=zero. Note that the Z movement downward is a negative (or minus value). Therefore "adding" a tool length offset in effect "subtracts" from the relative distance. Ergo the concept of "adding" a tool length offset to make the distance shorter. G44 does just the opposite of G43 in that it "subtracts" the tool length. G44 is rarely used. G49 cancels length compensation.