An absolute address, sometimes known as a direct address, machine address, or real address, is a precise memory address used by software programs or hardware devices. They’re utilized to keep data at a certain place so it may be retrieved more quickly at a later time.
Programming languages can have different ways of specifying the location of a particular function or piece of code, but one common technique is to refer to it by its absolute address. This would be the memory address of the computer which contains the code.
The other way that programming languages use to specify where something is located in memory is called relative addressing. Relative addressing means that you are referring to an item relative to some other point in memory instead of at a specific location on your hard drive or phone storage device.
This system has many advantages over absolute addressing because it doesn’t require programmers to know exactly where they are writing their code within each program’s files and folders–they just need to know how far into that file/folder they want their new instructions to appear.
So, for example, if a programmer wants their new instructions to be executed somewhere in the middle of an existing program, they might use relative addressing because it’s easy to figure out that you want them to be placed 200 lines into the file (for example). Absolute addresses would require the programmer to know exactly where on the hard drive their program is located–which can change from computer to computer depending on how many other programs are installed/used by a user.
In addition, since absolute address requires so much knowledge about different files and folders in order for it work properly, it leaves your code much more vulnerable for theft or tampering. Let’s say you have a virus scan running in the background when you’re writing your code and it deletes or moves one of your program files–your absolute address would no longer work and your code would stop functioning. Relative addressing, on the other hand, would still work even if some of the files changed location because the reference point (the line number in our example) stays the same.
Absolute addresses can also be used to access data from outside of a program’s normal boundaries. This is useful for things like reading or writing to specific memory locations, but it can also be dangerous because it gives programmers direct control over the computer’s hardware.
Overall, absolute addressing is a more sophisticated way of referencing items in memory, but it’s also much more difficult to use and leaves your programs exposed to many different types of damage.
Relative addressing, on the other hand, is much simpler and safer for most programming tasks. It’s still important to know how to use absolute addressing when necessary, but for most things, you’ll be just fine using relative addressing.