ორობითი/თექვსმეტობითი გარდამქმნელი

გადაიყვანეთ რიცხვები ორობით, თექვსმეტობით, ათობით და რვაობით სისტემებს შორის — ან გარდაქმენით ტექსტი ბაიტებად.

მზადაა. ჩაწერეთ რიცხვი ან ტექსტი გარდასაქმნელად.

ყოველი გარდაქმნა მუშაობს თქვენს ბრაუზერში. თქვენი რიცხვები და ტექსტი არასოდეს ტოვებს თქვენს მოწყობილობას.

ხშირად დასმული კითხვები

რის გარდაქმნა შემიძლია აქ?

ორ რეჟიმს. რიცხვის რეჟიმი აკავშირებს ორობით, რვაობით, ათობით და თექვსმეტობით სისტემებს — შეცვალეთ ნებისმიერი ველი და დანარჩენები მყისიერად განახლდება. ტექსტის რეჟიმი გარდაქმნის ნებისმიერ ტექსტს ბაიტების მნიშვნელობებად თქვენ მიერ არჩეულ სისტემაში და პირიქით.

მუშაობს თუ არა უარყოფით და ძალიან დიდ რიცხვებზე?

დიახ. უარყოფითი რიცხვები ინარჩუნებენ მინუს ნიშანს ყველა სისტემაში და არ არსებობს ზომის ლიმიტი — მნიშვნელობები ზუსტად გარდაიქმნება, დამრგვალების გარეშე. ფიქსირებული სიგანის დამატებითი კოდის (two's complement) ხედვა არ არის, რადგან მას აზრი მხოლოდ ბიტების სიგანის არჩევის შემდეგ აქვს.

იგზავნება სადმე ჩემი მონაცემები?

არა. ყველაფერი გამოითვლება ლოკალურად თქვენს ბრაუზერში, ასე რომ თქვენ მიერ შეყვანილი მონაცემები არსად იტვირთება.

რიცხვების სისტემების კონვერტაცია და ბაიტების კოდირება

კომპიუტერულ მეცნიერებასა და პროგრამირებაში მონაცემები სხვადასხვა ფორმატში წარმოდგება. რიცხვებისა და ტექსტის სხვადასხვა სისტემებში გადაყვანა ხშირად აუცილებელია კოდის დებაგირების, მონაცემთა გადაცემის ან მეხსიერების სტრუქტურის ანალიზის დროს. "ორობითი/თექვსმეტობითი გარდამქმნელი" არის ხელსაწყო, რომელიც უზრუნველყოფს რიცხვების მყისიერ კონვერტაციას ორობით, რვაობით, ათობით და თექვსმეტობით სისტემებს შორის, ასევე ტექსტის გარდაქმნას შესაბამის ბაიტებად და პირიქით.

ინსტრუმენტი მუშაობს ორ ძირითად რეჟიმში: რიცხვის რეჟიმი და ტექსტის რეჟიმი. ნებისმიერ ველში მონაცემების შეყვანისას, ყველა დაკავშირებული ველი მომენტალურად ახლდება.

რიცხვითი სისტემები და მათი თავსებადობა

რიცხვის რეჟიმში მუშაობისას ხელსაწყო მხარს უჭერს ოთხ ძირითად მათემატიკურ ბაზას:

  • ორობითი (Binary): კომპიუტერული არქიტექტურის საფუძველი, რომელიც იყენებს მხოლოდ 0 და 1 ციფრებს.
  • რვაობითი (Octal): სისტემა, რომელიც ეფუძნება 8-ის ფუძეს (ციფრები 0–7).
  • ათობითი (Decimal): სტანდარტული ადამიანური სათვლელი სისტემა 10-ის ფუძით (ციფრები 0–9).
  • თექვსმეტობითი (Hex): სისტემა 16-ის ფუძით, რომელიც იყენებს ციფრებს 0–9 და ასოებს A–F. თექვსმეტობითი გამოსავალი ყოველთვის იყენებს დიდ ასოებს.

რიცხვის რეჟიმში ნებისმიერი ერთი ველის რედაქტირება მყისიერად ანახლებს დანარჩენ სამ ველს. შეყვანილი რიცხვები შეიძლება შეიცავდეს პრეფიქსებს 0b (ორობითისთვის), 0o (რვაობითისთვის) ან 0x (თექვსმეტობითისთვის), ასევე წამყვან მინუს ნიშანს, გარშემო არსებულ სივრცეებს, ქვედა ტირეებსა და ჰარებს.

უარყოფითი რიცხვები ინარჩუნებენ წამყვან მინუს ნიშანს ყოველ სისტემაში. რიცხვების დამუშავება ხდება BigInt ობიექტის გამოყენებით, რაც უზრუნველყოფს ნებისმიერი სიზუსტის მთელი რიცხვების მხარდაჭერას 4,096 სიმბოლომდე. ეს გამორიცხავს დამრგვალების ცდომილებას და არ არსებობს რიცხვის ზომის პრაქტიკული ლიმიტი.

ტექსტისა და ბაიტების კონვერტაცია UTF-8 სტანდარტით

ტექსტის რეჟიმი საშუალებას იძლევა მოხდეს სიმბოლოების კოდირება ბაიტებად ან ბაიტების დეკოდირება უკან, ჩვეულებრივ ტექსტად. ტექსტის კოდირებისთვის გამოიყენება UTF-8 სტანდარტი.

ტექსტის რეჟიმში მუშაობისას მოქმედებს შემდეგი წესები:

  • ტექსტი → ბაიტები: ნებისმიერი შეყვანილი ტექსტი (მაქსიმუმ 200,000 სიმბოლო) გარდაიქმნება ბაიტების მნიშვნელობებად არჩეულ სისტემაში (ორობითი, რვაობითი, ათობითი ან თექვსმეტობითი).
  • ბაიტები → ტექსტი: შესაბამის სისტემაში ჩაწერილი ბაიტები გარდაიქმნება ტექსტად. ბაიტების მნიშვნელობები შეიძლება გამოიყოს ჰარებით ან მძიმეებით. თითოეული მნიშვნელობა მკაცრად უნდა შეესაბამებოდეს ერთ ბაიტს (დიაპაზონი 0–255) არჩეულ სისტემაში.

გამოსავალი მონაცემების ფორმატირებისას გამოიყენება წამყვანი ნულებით შევსების წესი:

  • ორობითი გამოსავალი ივსება წამყვანი ნულებით 8 ბიტამდე.
  • რვაობითი გამოსავალი ივსება წამყვანი ნულებით 3 ბიტამდე.
  • თექვსმეტობითი გამოსავალი ივსება წამყვანი ნულებით 2 ბიტამდე.
  • ათობითი გამოსავალი არ ივსება წამყვანი ნულებით.

შეცდომების დამუშავება და სტატუსები

არასწორი მონაცემების შეყვანის შემთხვევაში, ხელსაწყო აჩვენებს კონკრეტულ შეტყობინებებს:

  • თუ რიცხვის რეჟიმში შეყვანილია სიმბოლო, რომელიც არ შეესაბამება არჩეულ სისტემას, გამოჩნდება შეცდომა: "არასწორი რიცხვი ამ სისტემისთვის — შეამოწმეთ სიმბოლოები, რომლებსაც ის არ უნდა შეიცავდეს."
  • თუ ბაიტების დეკოდირებისას შეყვანილი მნიშვნელობა სცილდება 0–255 დიაპაზონს ან შეიცავს არასწორ სიმბოლოებს, სისტემა აჩვენებს შეტყობინებას: "არასწორი ბაიტ-კოდები — თითოეული მნიშვნელობა უნდა იყოს ერთი ბაიტი (0–255) არჩეულ სისტემაში."
  • თუ შეყვანილი ბაიტები არ შეესაბამება UTF-8 სტანდარტს, გამოჩნდება შეცდომა: "ეს ბაიტები არ წარმოადგენს სწორ UTF-8-ს, ამიტომ მათი ტექსტად ჩვენება შეუძლებელია."
  • თუ შეყვანილი ტექსტი აჭარბებს ლიმიტს, მომხმარებელი დაინახავს შეტყობინებას: "მონაცემები ზედმეტად დიდია ამ ხელსაწყოსთვის — სცადეთ უფრო მოკლე ტექსტი."

ოპერაციების შესრულებისას იცვლება ხელსაწყოს სტატუსი:

  • ველების გასუფთავების შემდეგ სტატუსი ხდება "გასუფთავდა."
  • ტექსტის ბაიტებად გარდაქმნის შემდეგ — "კოდირებულია."
  • ბაიტების ტექსტად გარდაქმნის შემდეგ — "დეკოდირებულია."
  • რიცხვის წარმატებული კონვერტაციის შემდეგ — "გარდაიქმნა."

მონაცემთა დამუშავება და კონფიდენციალურობა

უსაფრთხოება და მონაცემთა დაცვა მნიშვნელოვანი ასპექტია ტექნიკური ინფორმაციის დამუშავებისას. ყოველი გარდაქმნა მუშაობს თქვენს ბრაუზერში. თქვენი რიცხვები და ტექსტი არასოდეს ტოვებს თქვენს მოწყობილობას, რადგან დამუშავება არ საჭიროებს სერვერზე მონაცემების გაგზავნას.

ხშირად დასმული კითხვები (FAQ)

რის გარდაქმნა შემიძლია აქ?

ორ რეჟიმს. რიცხვის რეჟიმი აკავშირებს ორობით, რვაობით, ათობით და თექვსმეტობით სისტემებს — შეცვალეთ ნებისმიერი ველი და დანარჩენები მყისიერად განახლდება. ტექსტის რეჟიმი გარდაქმნის ნებისმიერ ტექსტს ბაიტების მნიშვნელობებად თქვენ მიერ არჩეულ სისტემაში და პირიქით.

მუშაობს თუ არა უარყოფით და ძალიან დიდ რიცხვებზე?

დიახ. უარყოფითი რიცხვები ინარჩუნებენ მინუს ნიშანს ყველა სისტემაში და არ არსებობს ზომის ლიმიტი — მნიშვნელობები ზუსტად გარდაიქმნება, დამრგვალების გარეშე. ფიქსირებული სიგანის დამატებითი კოდის (two's complement) ხედვა არ არის, რადგან მას აზრი მხოლოდ ბიტების სიგანის არჩევის შემდეგ აქვს.

იგზავნება სადმე ჩემი მონაცემები?

არა. ყველაფერი გამოითვლება ლოკალურად თქვენს ბრაუზერში, ასე რომ თქვენ მიერ შეყვანილი მონაცემები არსად იტვირთება.

რატომ არის მნიშვნელოვანი UTF-8 კოდირება ბაიტების გარდაქმნისას?

UTF-8 არის სიმბოლოების კოდირების გლობალური სტანდარტი, რომელიც თითოეულ სიმბოლოს ანიჭებს უნიკალურ ბაიტების თანმიმდევრობას. თუ შეყვანილი ბაიტები არ შეესაბამება ამ სტანდარტის სტრუქტურას, მათი ტექსტად დეკოდირება შეუძლებელია.