memory address 4000h whats the h mean?

So this has been bugging me for a while.. what does the h stand for? I've googled, and i get that it designates a base 16 hexadecimal. which aren't most / everything storage related base 16 in computers? so its redundant? like a 200R resistor the R lets you know its a 200 ohm, where if it wasn't there you would assume its a 200 and be right? and its there to make newbs ask silly questions? that about right?

Для того, чтобы оставить комментарий, необходимо регистрация или !login

This means that the number 4000 is in hexadecimal form. Hexadecimal numbers count to 16 opposed to the decimal numbers we normally use. That means we have 1 2 3 4 5 6 7 8 9 A B C D E and F

In assemblers we use all kind of different ways to tell the assembler what type of number to use.

For example: \$4000, 4000h
When using binary: %01010101 or 01010101b
Decimal speaks for itself.

OddballNo3 wrote:

so its redundant? like a 200R resistor the R lets you know its a 200 ohm, where if it wasn't there you would assume its a 200 and be right?

no, 4000h = 16K = 16384 so you don't omit this 'h' from number

The h (or &h or 0x) identifier is needed to differentiate between hexadecimal and decimal values. Both hexadecimal and decimal values can be used mixed together.

For example 4000h (which is hexadecimal) and 4000 (which is decimal) are really different values(4000h is the same as decimal value 16384) so it is not redundant.