Advertisement
Guest User

Untitled

a guest
Nov 24th, 2017
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.39 KB | None | 0 0
  1. function dec_to_bin(num)
  2. local total = 0
  3. local modifier = 0
  4. local value = ""
  5.  
  6. while math.pow(2, modifier) <= num do
  7. modifier = modifier + 1
  8. end
  9.  
  10. for i = modifier, 1, -1 do
  11. if math.pow(2, i-1) + total <= num then
  12. total = total + math.pow(2, i-1)
  13. value = value.."1"
  14. else
  15. value = value.."0"
  16. end
  17. end
  18.  
  19. return value
  20. end
  21.  
  22. function bin_to_hex(num)
  23. local num_array = {}
  24. local result = ""
  25. local bin_table = {
  26. ["0001"] = "1", ["0010"] = "2", ["0011"] = "3", ["0100"] = "4", ["0101"] = "5", ["0110"] = "6", ["0111"] = "7", ["1000"] = "8", ["1001"] = "9", ["1010"] = "A", ["1011"] = "B", ["1100"] = "C", ["1101"] = "D", ["1110"] = "E", ["1111"] = "F",
  27. }
  28.  
  29. for i = 1, #num do
  30. num_array[i] = num:sub(i,i)
  31. end
  32.  
  33. local g_set = {}
  34. for i = 1, math.ceil(#num_array/4) do
  35. local b_str = ""
  36.  
  37. for i2 = #num_array-(4*(i-1))-3, #num_array-(4*(i-1)), 1 do
  38. if num_array[i2] == nil then
  39. b_str = b_str.."0"
  40. else
  41. b_str = b_str..num_array[i2]
  42. end
  43. end
  44. g_set[i] = b_str
  45. end
  46.  
  47. for i = #g_set, 1, -1 do
  48. result = result..bin_table[g_set[i]]
  49. end
  50.  
  51. return result
  52. end
  53.  
  54. print(bin_to_hex(dec_to_bin(4294967295))) -- Yay!
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement