• Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

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?
 

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.
 

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 :p
 

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

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

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.

Latest threads

EE World Online Articles

Loading
Top