There is another way well.. possible.
There will be an ASI controller card in the PLC with a LED display, this will show faulty or missing units. If you disconnect the module but leave all others connected the ASI control card should show you the address, however if you break the loop then it will poll through the missing addresses. In all the systems I have worked on we ensured that all ASI interfaces, I/O or ASI Sensors were marked up with node address & drawings were also marked up. We would normally re-address a new unit with an ASI programmer this is simple plug in the module to the programmer, press read to get original address, then set the address to the one required (remember there are now A&B addresses so 64 in total). press write & it is configured to the Address.
On some systems, provided you only have one node in error, plugging in a ASI module/prox etc. that has an address of 0 will be configured to the address of the one that is missing (I believe this is done by putting the ASI control card into scan mode). It's been a few years since working on these so things may have moved on a bit.
ASI is a good system, however there are a few problems that can arise then faultfinding. If more than one unit is faulty (or one unit is dragging down the rest) then it will show all addresses as faulty, length of runs if near to max length can cause intermittent faults.