Is "Trash" an actual location on the physical hard drive?
Technically no. Trash is the combination of several hidden trash folders, one per volume that is mounted. And also filtered by user account so you won’t see trashed items from another account.
Basically, yes since files on macOS
(or any 'NIX system) consist of a couple of parts.
The file contents are referenced by an inode
which is referenced by 1 or more directory entries.
When a file is deleted or moved to Trash the file contents remain where it is.
In the case of move to Trash a new directory entry (under .Trash
) is created which references the file. The actual name in the directory entry is a modified version of the original (you can have many files of the same name in Trash).
To simply answer the question, the only thing that changes is the directory tree.
EDIT To address the additional question:-
Moving a file within a partition also (usually) leaves the file contents in place; moving to another location (with its own directory tree) involves a physical move of file contents. (To some extent this is program dependent - programs using the normal API behave this way, but actual behaviour is up to the program.)