Author Topic: Hex and Binary-Becoming a Better Hacker  (Read 7895 times)

0 Members and 2 Guests are viewing this topic.

Offline Daemon

  • VIP
  • Baron
  • *
  • Posts: 845
  • Cookies: 153
  • A wise man fears a gentle mans anger
    • View Profile
Hex and Binary-Becoming a Better Hacker
« on: August 19, 2012, 05:40:10 am »
So we all know that computers work in binary, zeros and ones. And somehow, when you program, your words and numbers that aren't ones and zeros get magically turned into binary so that the computer can execute your commands. But how many of you actually understand how binary works? Or how to count in it if needed? Can you convert from ASCII to HEX to BINARY by hand without using a program to do it for you? If so, then you understand what I mean when I say that by understanding HEX and BINARY you (computer users) can do so much more with your computer. For one of my favorite stories about programmer's who are so pro they don't even have to know programming languages, check out the story of MEL. I can only dream of one day being 1/10th the hacker that guy is.


01. Base 10


Everything we do regarding numbers, no matter what country your from, uses a Base 10 counting system (also known as Decimal) and in order to really understand how counting works, we have to go right back to the fundamentals and re-learn why we write 9+1 as 10. When your adding 1 to 9 it becomes ten. And it is written as 10 because we order our numbers based on powers of 10. Take 1,000 for example. 

Starting on the right we have the 1's column (10^0) next we have the 10's column (10^1) then the hundreds column (10^2) and finally the thousands column (10^3). Now this goes on indefinitely (there are an infinite amount of numbers) so anytime we get 10^X we simply add a new column and using this system can count forever as each column is simply 10x the column preceeding it (right to left order)
 
 10^3   10^2   10^1   10^0
 1        |    0     |    0    |    0
Thous. Hundred  Tens    One
 

The diagram above shows what I mean for those who are more of visual learners, and there will be others (i'm a visual learner, so i feel your pain when tutorials are only in text)

Now why do we use Decimal for our counting systems? Is it cause that's the only possible way in the universe to count? That my friends is a negative, in fact it's possible to count quite easily using ANY single digit number as a base. Base 8? Been done and is also known as Octal, Base 9? Possible, but a bit harder with odd numbers. Base 2? What do you think Binary is ;)

*IMPORTANT**
When counting in any base that is not Decimal, we need a way to signify what base we are counting in. So if counting in Binary, we would write (1010B) with the B standing for Binary. For Hex, we would write (10H), for any other base there is usually a sub-script but that's a bit hard for me to replicate in this document. So forgive my lack of definition in the Base 4 section, and remember that if possible it should always be noted somewhere what Base you are using. If it's not specified, it's automatically assumed to be Base 10.

02. Base 4

Simply because I like thoroughness, I'm going to explain how to count in Base 4 (and briefly Base 8) as well because that's what I learned first before stepping up to Hex and Binary. Also it'll help you grasp the theory behind it a bit more (imo) so that your not simply memorizing conversion charts but breathing and thinking in those different styles. First up is Base 4, it has...wait for it...4 numbers!!!!
0, 1, 2, 3 

02.01 An intermission
All counting (even Base 10) begins at 0 then goes upwards. If your a programmer, you notice this with arrays and loops and (like myself) probably wondered why. It's because technically, Base 10 is numbers 0 - 9, the number 10 is two digits long and is therefore 2 numbers long which can't fit into a single digit column (10 in a ones column? impossible) but when humans count out loud why would we count 0? If its not there then we don't count it. Theres obviously something, so we start at 1 and the 10th object we count will be #10. That's right, we humans don't actually count right! Fortunately, our computers do and so all counting in mathematics/computing/electronics starts at 0.


02.02 Continuation.


So in base 4, counting would be based on powers of 4 (4^0, 4^1, 4^2, etc.) and every column is 4x the preceeding column. Meaning we would count sequentially like so,

Base 4 ||  Decimal
00     ||  00
01     ||  01
02     ||  02
03     ||  03
10     ||  04
11     ||  05
12     ||  06
13     ||  07
20     ||  08


Are you confused yet?

First things first, when using any base other than Decimal, never pronounce 10 as TEN. Always say, one-zero. That will be the first step to cutting down on your confusion levels, so we would have zero, one, two, three, one-zero, one-two, one-three, two-zero in a Base 4 counting system. The reason we say the individual numbers is because in Base 4 (or any Base other than 10) the second column is X times that of the preceeding. So in this Base 4 counting we would have the ones column, then the 4s, then the 8s, next the 16ths, etc. Therefore one-zero means 0 in the ones column and one in the fours column, add those numbers together and you get 4 which is what the Decimal equivalent 10 (base 4) would be.

Base 4                                      Decimal

64  16   4    1
1  | 0  | 3  | 3               ==               79   


Now this way of looking at numbers in columns and not as a whole is also how we go about converting from base 4 to base 10. We take the number in the ones column (3) and multiply it by 1. Then we would take the number in the 4's column (3) and multiply it by 4. 16's column (0) times 16, and finally the 64th's column (1) times 64.

1x3=3
4x3=12
0x16=0
1x64=64

64+0+12+3 = 79 

I'm not quite sure how to explain this with words, it will become more apparent as we move on to the other Bases.

*IMPORTANT**
Take your time in learning these methods of counting, don't just rush ahead and try to memorize stuff. By taking the time to learn it, you can apply this to any Base number.


For practice, convert these Base 4 numbers to Decimal by hand (using a calculator for the multplication and addition is fine, but no online converters!) Then use the numbers to find the problem at the end of this tutorial and see the answer.

#1. 111 
#2. 313 
#3. 31223103


02.03 Octal-a brief history

http://en.wikipedia.org/wiki/Octal#In_computers

Tl;DR  Octal uses Base 8, and was briefly used in computing but since computers are based on 16, 32, or 64 bit words (blocks of bytes. description of which is outside of this tutorial) it would take 3 octal digits to represent one byte, but 2 hexadecimal digits perfectly specify 1 byte. Therefore easier to use.


03. Hexadecimal- Base 16

Hexadecimal, Hex, the counting system that is what makes assembly programming possible. Without hex we would be stuck doing computations either in a language or at binary level, no middle degree. In fact, the best description I've ever heard of Hex is: "Hex is programmer's shorthand for binary"


"But how can a system have base 16?" You might be asking. "Didn't you say that it's impossible to have 2 digits in one column?"

I did, and your right. It IS impossible to have two digits in one column as then reading numbers would be difficult if not nigh impossible. So in order to count with a base 16, we have to use letters to represent double digit numbers from 10-15. Refer to the following chart.

Hex  ||  Decimal
00   ||  00
01   ||  01
02   ||  02
03   ||  03
04   ||  04
05   ||  05
06   ||  06
07   ||  07
08   ||  08
09   ||  09
0A   ||  10
0B   ||  11
0C   ||  12
0D   ||  13
0E   ||  14
0F   ||  15
10   ||  16
11   ||  17
12   ||  18
13   ||  19
14   ||  20
15   ||  21
16   ||  22
17   ||  23
18   ||  24
19   ||  25
1A   ||  26
...........
20   ||  32

From this point on, any Hex number will be followed by an H (10H)
And remember, in any system but Decimal, 10H is pronounced one-zero, 20H is two-zero, etc. This ensures that we are counting the columns, and not mistakenly thinking one-zero is 10 when counting instead of one-zero being 16.

So take a good look at the chart above, take a second look, then take a deep breath, and read on!

In order to go from Decimal to Hex, we not only have to remember the correlation between each hex number to it's decimal counterpart, but we also have to be able to add and subtract letters from each other! Sounds a bit tough, but it's really not.



3.1 Hex to Decimal


Let's take another look at how 1A is made up though, another way to look at it is that 1A consists of one 16, and A ones (10 in the ones column). So to know what 1A means in decimal without referring to a chart, we would multiply:
1x16=16
Ax1=10
16+10=26

And that's it. Memorize 0-F and you can figure the rest out on your own.

Lets do some practice, convert the following hex numbers to decimal. Remember each column is 16x the preceeding column, so ones, 16's, 256's, etc. :

#4. 2B 
#5. 111
#6. C4F
#7. 0B3A


3.2  Basic Arithmetic-Hex

3 + F = 12H (or 18 decimal)
A + B = 15H (find it yourself :P )
A + 2 = CH
10 + A = 1AH 

The easiest way for me personally to do this in my head, is to remember what letter corresponds to each decimal number (as all H numbers are the same as decimal: 0 = 0, 1 = 1...9 = 9) then add it, before converting back to Hex. For example:

F + B ==> 15 + 11 = 26 ==> 1AH

However, I'm just beginning to practice hex lately, im sure with time I'll know that  A + C = 16H without even having to think about it or go through such a lengthly conversion process. For now I get to do it the long way though :P

Also, subtraction in hex is just like in decimal, 5 - 3 = 2. and A - B = 1. Easy enough right?


3.3 Subtraction and Addition-More Columns


Here's the confusing part when doing math with Hex. Multiple columns!! First we need to look again at reading math in columns, because each column can never have more than one digit (a-f are considered digits in Hex) it is simply impossible when doing addition (in any base) to move 2 to another column. For example:

  11
+ 19

You add 9+1 which = 10 then write a zero and add a 1 to the tens column. Add those up and we get 30 (all of this in Base 10). Go on, try and move a 2 following the rules of math. I can wait while you pound your head into the wall a bit, my first instinct was that of course we can move 2 into another column just like yours so I know the feeling.


Now that your head has lost a few brain cells from the wall, shall we continue?

So we know that in any base, we can never move more than 1 between columns, and know that we firmly believe in this addition in multiple columns is simple (albeit a bit confusing at first). If we add
1FC34H and A0CEEH we would first start at the right. 4+E = 12H (4 + 14 = 18 converted to Hex = 12H) so we would write the 2 and carry the 1. Next we have 3 + E + 1 (carried number) = 12H. Write the 2, carry the 1. C + C + 1 = 19H. Write the 9, carry the 1. F + 0 + 1 = 10H, write the 0 carry the 1. 1 + A + 1 = CH. Write the C and you have your answer, C0922. To double check your answer, you can use your computers default calculator by changing to the settings to a programmers calculator and selecting Hex.


(carried numbers are on the top row, just to help you follow along)

  1111

  1FC34H
+ A0CEEH
---------
  C0922H
 
 
Okay, that was addition. Simple enough, albeit a bit confusing adding C + C to get 19H isn't it? Relax, you'll get the hang of it. The real tough one is Subtraction in multiple columns, even more confusing IMO. But just follow the rules for subtraction, remember you can never borrow more than 1 from a column, and dont try to write B + 1 as 12(decimal) in one column instead of as C. I made that mistake a few times XD

3CF4H - 2DE6H =? 

First we try, 4 - 6. That ain't possible though, so we cross out F and write E then add the 1 to the 4 giving us 14H - 6 = E (dec. 20 - 6 = 14)
Next we do E - E = 0
Then we try C - D, not possible so we cross out the 3 and write a 2, add 1 to C giving us 1C - D = F  (dec. 28 - 13 = 15)
Finally, 2-2 = 0
Our answer is: 0F0EH (F0E on your calculator as they never show the leading zero)


  3CF4H
- 2DE6H
-------
 
 
 
 Whew! Time to practice!! I suggest re-writing them in columns for now as it makes it easier to add/subtract.
 
 #8.  4FD32CH + 3FD7B1H   
 #9.  F231CH + 334E216H   
 
 #10. 4CD3H - 1337H   
 #11. 6DD99 - 443AF   
 
 
3.4 Decimal to Hex
 Hex to decimal is pretty easy, multiply the amount in the column by what the column represents then add the numbers together and voila! You have decimal from a hex number! And decimal to hex is simply a reverse of the process, but a bit more difficult as it has more steps to it and take a little more thinking.
 
 So we take the number 100 and we want to convert it to hex. First we have to think of hex columns, (1, 16, 256...) and find how the highest number that will go into 100 at least 1 whole time. I know it may sound confusing, but it's actually simple.
 
 We know 1 goes into 100, 16 goes into 100,256 does not go into 100. So we back up and divide: 100 / 16 =  6.25
 Ignore the remainder, and write a 6 into the 16's column. next we take 16 and multiply it by 6, giving us 96.
 Then we subtract 96 from 100, which leaves 4. 1 goes into 4, 16 does not. How many times does 1 go into 4? 4 times. So we write a 4 into the ones column.
 
 For the visually inclined. Observe:
 100 / 16 = 6.25
 16 * 6 = 96
 100 - 96 = 4
 4 / 1 = 4
 
 16s    1s
 
 6   |  4     =  64H
 
 
 Lets try this again with a larger number, 39454 to Hex. First we find our starting column (1, 16, 256, 4096, 65536...) 65536 is too large, so we use 4096.
 
 39454 / 4096 = 9.642  (again, the remainder isn't important. all we want to know is IF there is a remainder or not)
 4096 * 9 = 36864
 39454 - 36864 = 2590      //done with the 4096 column, now we do the 256
 2590 / 256 = 10.117    //at this point our number looks like: 9AXXXX
 256*10 = 2560           //if you had to use a calculator, I suggest re-learning basic arithematic before trying to do hex or binary :P
 2590 - 2560 = 30          //16's column now.
 30 / 16 = 1.875           // our number is now 9A1XXX
 16 * 1 = 16
 30 - 16 = 14 
 14 = E                 // in hex your ones column can hold 16 numbers, 0 - F. Don't forget ;)
 
 39454 = 9A1EH
 
 
 
 Practice, convert the decimal number to a hex number:
 
 #12. 54478 
 #13  31337 
 
 1
 
 4.0.  Binary 01100010 01101001 01110100 01100011 01101000 01100101 01110011

 
You now know how to count in both Base 4 and Hexadecimal, you know how to convert hex to decimal and back. Now it's time to learn the boss of them all. Binary, 2 digits. 1 and 0. Simple as it gets, and totally awesome (also a royal pain in the ass to read)
Binary is a necessary evil though, for everything electronic works on a basic principle. On or Off. True or False. 1 or 0.  Get it or Don't get it?
Ready for the mind blowing bit? Your brain, in fact the human body, works on the same This or That principle. Think about every decision you make, every movement you make, it can all be broken down into tons of 1 or 0 decisions. Don't believe me? Let me convince you.

You might argue that when looking at a menu, you choose between the lobster, the steak, or the shrimp. What's 1 or 0 about that?
The problem is that when arguing that, you forget that choosing between those comes down to a single decision for each. Yes or No. Lobster, yes or no. Steak, yes or no. Shrimp, yes or no. And while you may have 3 choices, you will eventually end up saying either yes or no to each choice individually. (if you need more clarification I will expand on this concept)

Also when moving your body, every impulse sent by your brain comes down to MOVE this muscle or DONT MOVE this muscle. For example, each letter I type in this tutorial is the result of my brain accepting a lot of yes or no input (this letter, no, this letter, no, this letter, yes. okay, now that i know it's letter C, move this muscle? no, this muscle? no, this muscle? yes. for letter c move muscle c) and each of those miniscule muscle movements that seem so complex are just yes or no's happening at speeds to fast for our brains to comprehend so we see them as one movement.

Whoa, so like, our brains and computers work the same way???
Yea. We based computers on our brains, so they better work the same way!!! Have I convinced you yet?


4.1 The nitty-gritty


The chart:

Binary || Decimal

00     || 00
01     || 01
10     || 02
11     || 03
100    || 04
101    || 05
110    || 06
111    || 07
1000   || 08
1001   || 09
1010   || 10


This chart shows you how quickly Binary gets long and unamanageable to read, were only in the double digits in decimal and binary is already approaching five digits...we're gonna truck on anyways! Cause if it was easy being so Boss, then everyone would be ;)

Binary has 2 digits, so everything is based on the power of 2. 2^0, 2^1, 2^2, 2^3... therefore our columns are 2x the preceeding column. 1, 2, 4, 8, 16, 32, 64...

 1  | 0 | 1 | 0   would be read as:
1x8  0x4 1x2 0x1
1 in the 8 column, 0 in the 4 column, 1 in the 2 column, and 0 in the 1 column. add it all up, we get 10. Perfect!


4.2 Adding and subtracting in Binary


Adding and subtracting is ridiculously easy to accomplish, though the result will leave you guessing as to what it corresponds to in decimal because of how quickly new columns are added onto our binary number

*from now on all binary numbers will have B after them*

Take for example, 1010B + 1010B. First we add the ones column, 0 + 0 = 0 write it down. move to the next, 1 + 1 = 10 so we write a 0 and carry the 1.
1 + 0 + 0 = 1 write it down. 1 + 1 = 10 write the 0 carry the 1. Ridiculously easy!!

(carried numbers are on top)
 1 1

  1010B
+ 1010B
-------
 10100B

 
 heres the rule for binary addition, you may recognize it as being the exact same as truth tables (true or false == 1 or 0)
 
 0 + 0 = 0
 0 + 1 = 1
 1 + 0 = 1
 1 + 1 = 10 //0 carry the 1
 
 So for subtraction, its just as easy!!! Much easier to accomplish than hex :)
 Heres the subtraction table, for binary it's easier to just learn this first:
 
 0 - 0 = 0
 0 - 1 = 1  //borrow the 1
 1 - 0 = 1
 1 - 1 = 0
 
 1010B - 0111B = ? 
 first we try 0 -1, cant be done so we borrow 1. 10B - 1 = 1 write it down. this is because 10 (say one-zero) is equal to 2 in decimal. 2 - 1 = 1  at least, this is the best way I've come up with to think about it.   //we now have a number like XXX1
 next, 0 - 1. again, borrow 1. but the next column is also a 0 so we go to the far left. borrow 1, making it a zero.
 now the second column from the left (4's column) is now equal to one-zero (10B) so we borrow one from that, turning it into a 1 (10B - 1B = 1, 2 - 1 = 1)
 now we have what we need to subtract from our 2s column (second from the right)  10 - 1 = 1   //we now have a number that looks like XX11
 0 - 0 = 0   //X011
 0 - 0 = 0  //0011
 
 
  1010B
- 0111B
--------
  0011B
 
I know that last bit about 10B - 1B = 1 is a bit confusing, so take the time to read through this section again if it doesn't make sense. And just think of it as 2 - 1 in this case

Practice:

#14. 100101 + 101111 
#15. 1010 + 1111     

#16. 110101 - 100101 
#17. 010101010101 - 001110100111 



4.3 Binary to Decimal back to Binary to Hex back to Binary

Binary is powers of 2, so to do binary to decimal we would take a binary number, 11011, then do the columns trick.

16    8     4     2     1
1  |  1  |  0  |  1  |  1

16 + 8 + 0 + 2 + 1 =  27 

And to do the reverse, we do division:

First we take our number, 27. and the powers of 2 ( 1, 2, 4, 8, 16, 32...)
32 is too large, so we do 27 / 16 = 1.6875  //again, the remainder doesn't matter. all we care about is if there is a remainder or not. True or False again, go figure ;)
27 - 16 = 11         //write the 1 from above, we now have 1XXXX
11 / 8 = 1.375         //write the 1 in, 11XXX
11 - 8 = 3   
4 doesn't go into 3, so thats a 0    // 110XX
3 / 2 = 1.5    //1101X
3 - 2 = 1
1 / 1 = 1    //11011
and there's our answer:  27 is 11011 in binary

So to  do Binary to Hex, you really need to memorize the following table. There is no easy way to go straight from binary to hex, as it would require a lot of work. Instead, when you think of 1010 you should know that it is equal to 10 (decimal) which is equal to A (hex)

Hex  ||  Dec. || Binary
00   ||  00   ||  00   
01   ||  01   ||  01
02   ||  02   ||  10
03   ||  03   ||  11
04   ||  04   ||  100
05   ||  05   ||  101
06   ||  06   ||  110
07   ||  07   ||  111
08   ||  08   ||  1000
09   ||  09   ||  1001
0A   ||  10   ||  1010
0B   ||  11   ||  1011
0C   ||  12   ||  1100
0D   ||  13   ||  1101
0E   ||  14   ||  1110
0F   ||  15   ||  1111



then when you see binary such as  11101101001010100110 you can break it into chunks of 4:

1110 1101 0010 1010 0110

which then correspond to a hex number:
1110B = EH
1101B = DH
0010B = 2H
1010B = AH
0110B = 6H

so our converted number would be: ED2A6H
or 971430 (base 10)


Now if your binary number doesnt break evenly into chunks of 4, just add 0's to the first group until it does. Technically you don't need the leading 0's, but it does make it easier (IMO) to convert. example:

1001001 ==> 0100 1001 ==> 49H or 73   which is the same as
100 1001 ==> 49H or 73



Practice:
*TIP*
Break all of the binary into chunks of 4 starting on the right so you can add 0's to the beginning if needed, then do one chunk at a time. It'll make it much easier.


#18. 010010101 to hex   
#19. 11101 to hex       
#20. 0110101 to decimal
#21. 34H to binary     
#22. 3E6F2 to binary   

5.0 Conclusion

As you can see, binary to decimal is a royal pain in the ass which is why hex was invented, instead of having look at lots of 1's and 0's we can instead write the 1's and 0's we can instead memorize 16 numbers and how they relate and then re-write binary in hex which provides more manageable numbers than decimal. Especially because once you get into the address's of memory within your computer your talking about billions of memory locations. There is a lot more that goes on when using hex and binary for assembly language programming, or anything at machine level, but that is outside of the scope of this article so your on your own for now. (Possibly in the future I will write a tutorial on that, but my mind is fried from all of this math right now. all the examples/practice are original ones that I came up with and calculated the answer to)

For now, you have learned how different base counting systems work, how to convert any base to decimal, and most importantly how to convert hex, binary, and decimal interchangeably. That should be a good foundation for later low-level programming and if nothing else is just good knowledge too have :)

5.1 Additional Comments

How binary is converted to ascii is like so:
ASCII (text) is all given a corresponding decimal number which can then be converted to either hex or binary that consists of 1 byte (8 bits) so the conversion for the letter B would look like this:

B ==> 66H ==> 110 0110 (add a 0 to the first group to complete the byte, all bytes MUST have 8 bits, and bits are either True or False, 1 or 0. we humans might not need the beginning 0, but the computer does)
0110 0110  is what the machine reads every time you type out a capital B. Again, how this interacts with the components in your computer is something that is at least one or two tutorials by itself.

5.2 Additional Practice and Reading


I challenge you to look at an ASCII table, like this one, and then work on converting the ASCII to binary. or type up random bits of binary that are 8 bits (digits) long and convert it to HEX then find it on the ASCII table. That's what I'll be doing for a bit, also there is a hidden binary message in this article (okay, not so hidden) find it, convert it, understand it.

For more about binary bits and bytes:
http://en.wikipedia.org/wiki/Bit
http://en.wikipedia.org/wiki/Byte

Also check out the ebooks section for books on Assembly Language as the good ones will give you a good overview on what's going on "Under the Hood" so that this all makes a little more sense to you.
Thanks for reading this, I hope you enjoy it as much as I have enjoyed learning about Hex and Binary :)

Cheers,
Daemon

*Answers to Practice Problems*


#1. (21)
#2. (55)
#3. (56019)


#4. (43)
#5. (273)
#6. (3151)
#7. (2874)


#8. (8FAADD)
#9. (3440532H)
#10. (399CH)
#11. (299EAH)
 

#12. (D4CEH)
#13. (7A69)


#14. (1010100)
#15. (11001)
#16. (10000)
#17. (110101110)


#18. (95H)
#19. (1DH)
#20. (53)
#21. (110100)
#22. (111110011011110010)


« Last Edit: August 19, 2012, 05:42:27 am by Daemon »
This lifestyle is strictly DIY or GTFO - lucid

Because sexploits are for h0edays - noncetonic


Xires burns the souls of HF skids as a power supply

Offline techb

  • Soy Sauce Feeler
  • Global Moderator
  • King
  • *
  • Posts: 2350
  • Cookies: 345
  • Aliens do in fact wear hats.
    • View Profile
    • github
Re: Hex and Binary-Becoming a Better Hacker
« Reply #1 on: August 19, 2012, 05:52:13 am »
This is a vital subject for embedded/hardware guys. You REALLY should know the conversions and what is going on with the number systems relating to binary. Hex is the second most vital number system compared to binary, decimal is just for the human mind to comprehend how computers crunch numbers.


@OP, +1.
>>>import this
-----------------------------

Offline p_2001

  • Royal Highness
  • ****
  • Posts: 684
  • Cookies: -64
    • View Profile
Re: Hex and Binary-Becoming a Better Hacker
« Reply #2 on: August 19, 2012, 07:11:27 am »
pretty basic but very useful for  beginners.. +1


How about a hex tutorial signifying WHY these numbers are so useful...?
That is.. A bit of machine language.. And asm.
Just enough to make people understand..
"Always have a plan"

Offline Huntondoom

  • Baron
  • ****
  • Posts: 856
  • Cookies: 17
  • Visual C# programmer
    • View Profile
Re: Hex and Binary-Becoming a Better Hacker
« Reply #3 on: August 19, 2012, 10:19:01 am »
found it a bit hard to understand in compression with an other tutorial I have seen,
still good, missed some parts, on which I can't name, because I can't figure out what they were
Aslong as you are connected to the internet, you'll have no privacy

Advanced Internet Search
Clean Up!

Offline Daemon

  • VIP
  • Baron
  • *
  • Posts: 845
  • Cookies: 153
  • A wise man fears a gentle mans anger
    • View Profile
Re: Hex and Binary-Becoming a Better Hacker
« Reply #4 on: August 19, 2012, 10:45:49 am »
pretty basic but very useful for  beginners.. +1


How about a hex tutorial signifying WHY these numbers are so useful...?
That is.. A bit of machine language.. And asm.
Just enough to make people understand..

Good feedback, I was planning on making a second part to it that got more into machine code/asm as I got more involved with those subjects and understand them well enough to make a guide. This WAS meant to be pretty basic, I figured if I'm gonna start might as well start at the basics and build up from there. As for a more advanced version, t was just an idea, but i suppose it just got bumped up to #1 on the priority list lol

found it a bit hard to understand in compression with an other tutorial I have seen,
still good, missed some parts, on which I can't name, because I can't figure out what they were

Missed some parts? I would love to hear what you have to say about that, I know it's not the easiest to understand but I thought I did pretty good considering I was only using ASCII text to represent everything. Shoot me a PM or give me your suggestions on here, doesn't matter to me either way. Thanks for speaking up though so I can do something to fix it.


Also, anyone whose good with graphics should consider making an (readable) ASCII table poster with decimal, hex, and binary conversions of the numbers. IDK about you guys, but I would hang that up on my wall in a heartbeat ^_^
This lifestyle is strictly DIY or GTFO - lucid

Because sexploits are for h0edays - noncetonic


Xires burns the souls of HF skids as a power supply

Offline Huntondoom

  • Baron
  • ****
  • Posts: 856
  • Cookies: 17
  • Visual C# programmer
    • View Profile
Re: Hex and Binary-Becoming a Better Hacker
« Reply #5 on: August 19, 2012, 10:47:34 am »
Also, anyone whose good with graphics should consider making an (readable) ASCII table poster with decimal, hex, and binary conversions of the numbers. IDK about you guys, but I would hang that up on my wall in a heartbeat ^_^

I think I know what it is but it would require for you to redo the whole thing, even so I was planning to make such a tutorial
Aslong as you are connected to the internet, you'll have no privacy

Advanced Internet Search
Clean Up!

Offline Daemon

  • VIP
  • Baron
  • *
  • Posts: 845
  • Cookies: 153
  • A wise man fears a gentle mans anger
    • View Profile
Re: Hex and Binary-Becoming a Better Hacker
« Reply #6 on: August 19, 2012, 11:21:05 am »
I think I know what it is but it would require for you to redo the whole thing, even so I was planning to make such a tutorial

Not exactly a fountain of helpful information there....how bout something I can use instead of cryptic hints please?
This lifestyle is strictly DIY or GTFO - lucid

Because sexploits are for h0edays - noncetonic


Xires burns the souls of HF skids as a power supply

Offline Huntondoom

  • Baron
  • ****
  • Posts: 856
  • Cookies: 17
  • Visual C# programmer
    • View Profile
Re: Hex and Binary-Becoming a Better Hacker
« Reply #7 on: August 19, 2012, 11:30:30 am »
Not exactly a fountain of helpful information there....how bout something I can use instead of cryptic hints please?
you'll find out, you will :P
Aslong as you are connected to the internet, you'll have no privacy

Advanced Internet Search
Clean Up!

Offline Daemon

  • VIP
  • Baron
  • *
  • Posts: 845
  • Cookies: 153
  • A wise man fears a gentle mans anger
    • View Profile
Re: Hex and Binary-Becoming a Better Hacker
« Reply #8 on: August 20, 2012, 08:43:43 pm »
Lol. Well I got into an asm course at school so as I start learning that ill post a tutorial or two. Ebooks are awesome for knowing the conplexities. But I think a tutorial about the basics in a condensed easy to read format might be a nice thing to have on this site. it'll be a few weeks before I get that up though. Sooo excited for learning assembly XD
This lifestyle is strictly DIY or GTFO - lucid

Because sexploits are for h0edays - noncetonic


Xires burns the souls of HF skids as a power supply

Offline P4ssion

  • /dev/null
  • *
  • Posts: 8
  • Cookies: 0
    • View Profile
Re: Hex and Binary-Becoming a Better Hacker
« Reply #9 on: August 20, 2012, 10:06:25 pm »

 :) Thanks for the tutorial..


but...
5 - 3 = 2. and A - B = 1. Easy enough right?

 :o how could this happen?!!

Offline Daemon

  • VIP
  • Baron
  • *
  • Posts: 845
  • Cookies: 153
  • A wise man fears a gentle mans anger
    • View Profile
Re: Hex and Binary-Becoming a Better Hacker
« Reply #10 on: August 20, 2012, 10:17:03 pm »
:) Thanks for the tutorial..


but...
 :o how could this happen?!!

Ah shit. My bad, I meant B-A=1
Ill update it soon as I get home

Thanks for catching it lol, I spent like 4-5 hours straight working on that so there's bound to be a few mistakes from my tired brain haha
« Last Edit: August 20, 2012, 10:18:57 pm by Daemon »
This lifestyle is strictly DIY or GTFO - lucid

Because sexploits are for h0edays - noncetonic


Xires burns the souls of HF skids as a power supply

Offline relax

  • Sir
  • ***
  • Posts: 562
  • Cookies: 114
  • The one and only
    • View Profile
Re: Hex and Binary-Becoming a Better Hacker
« Reply #11 on: August 20, 2012, 10:20:21 pm »
I just read about binary to hex in school its actually really interesting :)

thanks for the tutorial

Offline P4ssion

  • /dev/null
  • *
  • Posts: 8
  • Cookies: 0
    • View Profile
Re: Hex and Binary-Becoming a Better Hacker
« Reply #12 on: August 20, 2012, 11:41:24 pm »

 ???
4.0.  Binary 01100010 01101001 01110100 01100011 01101000 01100101 01110011


01110111 01110100 01100110 00100001 00100001 00100001

Offline Daemon

  • VIP
  • Baron
  • *
  • Posts: 845
  • Cookies: 153
  • A wise man fears a gentle mans anger
    • View Profile
Re: Hex and Binary-Becoming a Better Hacker
« Reply #13 on: August 21, 2012, 12:44:28 am »
???

01110111 01110100 01100110 00100001 00100001 00100001

The binary in that title isn't supposed to say binary....did you not try converting it before saying I failed? Convert it and you'll get it
This lifestyle is strictly DIY or GTFO - lucid

Because sexploits are for h0edays - noncetonic


Xires burns the souls of HF skids as a power supply

Offline P4ssion

  • /dev/null
  • *
  • Posts: 8
  • Cookies: 0
    • View Profile
Re: Hex and Binary-Becoming a Better Hacker
« Reply #14 on: August 21, 2012, 01:51:35 am »
The binary in that title isn't supposed to say binary....did you not try converting it before saying I failed? Convert it and you'll get it
i already did, but did you try to convert mine? ;)