What does 0x2F mean?

Status
Not open for further replies.

chris414

New Member
What does the "0x" in "0x2F" mean? I get that the "2F" is hexadecimal, but what relevance does the "0x" have?

blueroomelectronics

Well-Known Member
0x means a hexadecimal number follows

Papabravo

Well-Known Member
It is used to distinguish between 'AF' the alphabetic string and 0xAF the hexidecimal number. The number starts with a digit which has the same value in any number base.

Triode

Active Member
and 0b will often proceed binary numbers, just FYI

Last edited:

Wp100

Well-Known Member
Hi,

In that little code example I sent you will see on the first line the code LIST P=18F2550,r=hex - radix=hex - meaning that any uncoded number will be treated as a hex value - so if you had movlw 16 it would be recognised as hex 0x16.

It is also quite popular for the radix=dec when 16 is simply that, but more commonly coded as .16 - the full point denoting a decimal value follows.

Even when using the Radix statement, to avoid problems its perhaps wise to always code your values accordingly 0xhex or .dec or binary b'01010101'

solarwind

New Member
What does the "0x" in "0x2F" mean? I get that the "2F" is hexadecimal, but what relevance does the "0x" have?

As many have said, the 0x (in many languages including C and PIC ASM) is a prefix added to hexadecimal numbers. 0b means binary and 0d usually designates decimal, although decimal is usually default and assumed to be decimal without any prefix. 0O (zero-oh) usually means octal

thanks a lot

Nigel Goodwin

Super Moderator
thanks a lot

If you read the MPASM/MPLAB help files, all these things are explained.

Triode

Active Member
If you read the MPASM/MPLAB help files, all these things are explained.

I sometimes think a helpfile that lists all the help files and explains what kind of stuff they cover is in order.

skeeterb

Member
If you want to figure out the binary/hexadecimal thing use this chart I created. I constantly use it when I'm writing code for PICs. It helps me speed up the coding after I create a chart of how I want ports to be either High or Low.

heres a little bit of sample code

Code:
movlw 0x0A
movwf PortB
0x0A means 00001010 in Binary which means Pins 1 and 3 are High and the rest are Low

Attachments

• Hex-Binary Chart.txt
26.2 KB · Views: 419
Last edited:

Mike - K8LH

Well-Known Member
Doesn't the Windows Calculator provide a simple mechanism for looking at a number as decimal, binary, or hex?

skeeterb

Member
I wanted a quick reference guide I can use when I'm coding. All I have to do is do a search in my hex/binary chart and go straight to the correct hex code

Mr RB

Well-Known Member
Doesn't the Windows Calculator provide a simple mechanism for looking at a number as decimal, binary, or hex?

I wrote a little free windows program that does dec/hex/binary conversion to 32bits and has ascii key codes displayed etc etc;

"HexCon" Hex-Decimal-Binary converter

3v0

Coop Build Coordinator
Forum Supporter
I wanted a quick reference guide I can use when I'm coding. All I have to do is do a search in my hex/binary chart and go straight to the correct hex code

The hex to bin and bin to hex should be engraved deeply into your brain if you want to work in embedded systems. Along the line of 2+3=5 type of recall. You need to know 1011 is B and 1101 is D without thinking.

The time it takes to learn the 16/32 conversion will be paid back to you many times.

Triode

Active Member
I'm just not sure why you made the chart go up to 2 digits of hex and 8 of binary. Hex converts in nice 4 bit chunks, thats why its used with computers. You can look at any hex digit and know what the corresponding block of 4 binary bits ("nibble") is without knowing the digits that proceed it. Conversly, if I tell you "I have a decimal number, the fifth digit is 9" you can't get the corresponding binary for that part of the number.

Last edited:
Status
Not open for further replies.

Replies
4
Views
1K
Replies
7
Views
1K
Replies
20
Views
4K
Replies
8
Views
2K
Replies
3
Views
2K