As the last post said, it is all to do with offsets.
You do not mention a home position, and this is what you must establish first. You then home your lathe. Mach 3 then knows where it is and zero's the Machine Co-ordinates DRO's. Your home position should be established with switches (preferred) or a position to which you can return, time and time again, with absolute accuracy.
Using your selected method, create your tool table.
So you now have a home position, and the tool offset table. The tool offset table is an offset from an as yet unknown position of the lathe, and what remains to be done is set that position.
If I want, therefore, to set an accurate offset, my X offset is 3.6267 to the lathe centre. The Z offset varies as to how you write your program and where the Z position 0 is. It is usually, but not always, at the start face of the barstock.
If you were doing a large number of units, then I would use the HomeOff facility when homing, to zero the lathe at a position level with the face of the chuck. My offset would, therefore be how much the barstock stuck out of the chuck, or I would write my program so that it measured from the face of the chuck too, and there would not be an offset.
However you arrive at where to set the Z0 position, it depends on choice - your choice, and there are pro's and con's on either side.
Depending on the job it might vary. This is where the offset table comes in and you can enter the appropriate offset in the offset tables, using G55 to G58 and G59.7 to G59.255 - and use the offset for a particular program. Enter your x offset - usually to the centre of the lathe, then calculate your z offset from your home position.
Start up - home the table - and run the program. Provided you have accurately written the tool changes, your machine will start up, and move to the correct position for that program and that tool.
It sounds a bit complicated but the rule is - the machine must always know where it is BEFORE you do anything.
1. Establsh a home position, either with switches (prefered) or a position to which you can return time and time again with accuracy.
2. Establish a 0,0 position from which all tools can be measured.
3. Calculate the correct offset for running the program - i.e. know the offsets from your "home" position to the 0.0 in your program