Don't worry

You are certainly getting very advanced before you even start.
You don't need home switches, or limit switches to enjoy CNC. If you have your axis working from Mach 3 then that is all there is to it.
You're main job is to get the axis up and running reliably and accurately, which means setting up your motor tuning (see Config/Motor Tuning). Setting your "Steps per Unit" and your sped and accerleration for each axis is the first thing to do. Do backlash next - and you are ready.
You seem to have a grasp of the Ports and Pins, if you are talking about Limit and Home switches, so I will move on quickly.
CNC depends on your machine knowing where it is. There are two ways of doing this, and the easiest is to set up your work on the table, move your cutter to a fixed point, and tell the machine that is where it starts from. This is usually point 0.0.0. which is the bottom left hand corner of the work, with the cutter resting on top of the work. (This is where most G Code programs are written from) This is known as
program co-ordinates. The machines says "right" and carries on the program. You can do that many times, as long as you are satisfied that the machine is starting in the same place each time (and therefore knows where it is)
The second way is more professional, and involves "home switches". These are fitted to the machine in a specific place (one on each axis) and if you press the "Ref All Home" strip, then Mach 3 will automatically move the table and cutter in turn, until all switches have been contacted, and it will remain there. (Any axis without a switch is just zeroed, with no further movement). The table therefore has zeroed itself and knows where it is and this position is called "machine co-ordinates" 0.0.0
It is doubtful whether these switches would be in a place that is any use at all for machining anything, and certainly would not be at a place from where a G Code program would be written (unless you were a mathematical genius). To make use of this is the job of the Offset table (see Config/Fixtures) and here can be entered offsets to move the table to a convenient position to start work. Offsets start at G54 to G58 and G59P* (where * is 7 to 255). If you enter an offset, then tell the table to move to 0.0.0, the table will move to iits new starting position, which can be anywhere for your convenience. The new position is shown in Program Co-ordinates.
That's enough of that, but it gives you the idea.
Fortunately Mach 3 can double up on limit and home switches, so you can designate the same switch to be both a home switch and a limit switch. Mach 3 will change the function of the switch as it needs to. You need to make sure that they are designated on Config/Ports and Pins/Input Signals.