You're welcome. Thanks to all the other folks who help at the forum (and make it possible!) too!
An address consists of a segment and an offset. In real mode, the contents of a segment register are multiplied by 16 and added to the offset to form the linear address... which is the same as the physical address...
In protected mode, the rules are different - the value in a segment register serves as an index into a table of structures, each of which contains a "base" (amongst other things) which is added to the offset to form the linear address. In any OS you're likely to encounter, the "base" is zero so the linear address is just the offset. However... the OS has almost certainly enabled "paging", which means that the actual physical address in RAM can be "anywhere it pleases" - even "paged out" to disk and not in RAM at all (for the moment).
In any case, Nasm only knows about the offset from the beginning of the section. All else is up to the linker. An exception is "-f bin" output format, in which the output driver "acts as its own linker". Even in this case, the "assembler" part of Nasm doesn't know what the output driver is going to do, so treats all addresses as "relocatable" (this is what the error message about "scalar values" means: "not relocatable").
Does that answer the question?
Best,
Frank