დეველოპერის ხელსაწყო

რიცხვთა სისტემების გადამყვანი

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

რიცხვთა სისტემების გადამყვანი

შეიყვანე რიცხვი, აირჩიე მისი სისტემა — და ნახე ოთხივე ერთდროულად.

ყველა ხელსაწყო

ორობითი
რვაობითი
ათობითი
თექვსმეტობითი

დაკავშირებული ინსტრუმენტები

სხვა დეველოპერული ხელსაწყოები.

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

ჩაწერეთ მნიშვნელობა ველში რიცხვი, შემდეგ შეყვანის სისტემის მენიუთი მიუთითეთ ხელსაწყოს, რომელ სისტემაში აკრიფეთ იგი: ათობითში, ორობითში, რვაობითში თუ თექვსმეტობითში. როგორც კი ამას გააკეთებთ, ორობითი, რვაობითი, ათობითი და თექვსმეტობითი ფორმები ერთად გამოჩნდება და ციფრის შეცვლისთანავე სინქრონში დარჩება. თითოეულ შედეგს აქვს საკუთარი კოპირების ღილაკი, ამიტომ მნიშვნელობის პირდაპირ კოდში, კალკულატორში ან კონფიგურაციის ფაილში ჩასმა შეგიძლიათ. თექვსმეტობითი ასოები შეიძლება დიდი ან პატარა რეგისტრით აკრიფოთ, ხოლო ხელსაწყო უგულებელყოფს გავრცელებულ პრეფიქსებს, როგორიცაა 0x თექვსმეტობითისთვის ან 0b ორობითისთვის, ამიტომ კოდიდან ჩასმული მნიშვნელობა უპრობლემოდ მუშაობს.

რა არის სინამდვილეში რიცხვთა სისტემის ფუძე

ფუძე, ანუ რადიქსი, უბრალოდ ის რიცხვია, თუ რამდენ განსხვავებულ ციფრს იყენებს თვლის სისტემა ახალ სვეტში გადასვლამდე. ათობითი (ფუძე 10) ათ ციფრს იყენებს — 0-დან 9-მდე; ორობითი (ფუძე 2) მხოლოდ 0-ს და 1-ს; რვაობითი (ფუძე 8) — 0-დან 7-მდე; ხოლო თექვსმეტობითი (ფუძე 16) — 0-დან 9-მდე ციფრებს დამატებული A-დან F-მდე ასოები, რომლებიც ათიდან თხუთმეტამდე მნიშვნელობებს ცვლის. მთავარი იდეა ისაა, რომ ოთხივე ერთი და იმავე სიდიდის სხვადასხვა სამოსელია. ათობითში ჩაწერილი 255 ზუსტად იგივე რაოდენობაა, რაც ორობითში 11111111, რვაობითში 377 და თექვსმეტობითში FF. სისტემებს შორის გადაყვანა რიცხვს არასოდეს ცვლის — მხოლოდ მის ჩაწერის ფორმას, სწორედ ამიტომ აჩვენებს ეს ხელსაწყო ყველა ფორმას ერთდროულად.

ათობითი, ორობითი, რვაობითი და თექვსმეტობითი გვერდიგვერდ

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

ათობითიორობითირვაობითითექვსმეტობითი
0000
21022
81000108
10101012A
15111117F
16100002010

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

დამუშავებული მაგალითი: 156-ის ხელით გადაყვანა

ათობითი 156-ის თექვსმეტობითში გადასაყვანად გაყავით 16-ზე: 156 გაყოფილი 16-ზე არის 9 ნაშთით 12, ხოლო 12 არის თექვსმეტობითი ციფრი C, ამიტომ 156 გახდება 9C. ორობითში გადასასვლელად შეგიძლიათ გამოიყენოთ "ოთხი ბიტი თითო თექვსმეტობით ციფრზე" მალსახმობი: 9 არის 1001, ხოლო C არის 1100, ამიტომ 156 არის 10011100. ამ ორობითის მარჯვნიდან სამ-სამ ციფრად დაჯგუფება რვაობითში 234-ს იძლევა. შეიყვანეთ 156 ხელსაწყოში არჩეული ათობითით და ზუსტად ამ შედეგებს დაინახავთ — ეს ქაღალდზე გაკეთებული არითმეტიკის სწრაფი შემოწმების გზაა.

რატომ არის ეს ინსტრუმენტი სასარგებლო

ყველა, ვინც დაბალი დონის კოდს კითხულობს ან წერს, მთელი დღე გადადის სისტემებს შორის. თექვსმეტობითი ჩნდება CSS ფერების კოდებში, როგორიცაა #1A2B3C, მეხსიერების მისამართებსა და მაჩვენებლებში, ქსელის პაკეტების ბაიტურ მნიშვნელობებში და შეცდომების კოდებში. ორობითში ცხოვრობს ბიტური მასკები, წვდომის დროშები და ბიტური ოპერატორები, ხოლო ათობითი ის ფორმაა, რომლითაც ადამიანები რეალურად აზროვნებენ. ამ გადაყვანების თავში გაკეთება ნელია და შეცდომისკენ მიდრეკილი, განსაკუთრებით ასოებისა და გრძელი მნიშვნელობების შემთხვევაში, ამიტომ ოთხივე ფორმის ერთად განახლების ხედვა მთელ კატეგორიას წვრილ შეცდომებს აშორებს და ცალკე კალკულატორთან ხელის ფათურისგან გათავისუფლებთ.

სიზუსტე და კონფიდენციალურობა

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

FAQ

რატომ იყენებენ კომპიუტერები ორობით და თექვსმეტობით სისტემებს ათობითის ნაცვლად?

კომპიუტერი ყველაფერს ინახავს ტრანზისტორის ჩართულ/გამორთულ მდგომარეობებად, რაც პირდაპირ შეესაბამება ორობითი სისტემის ორ ციფრს — 0-ს და 1-ს, ამიტომ ორობითი სისტემა აპარატურის ბუნებრივი ენაა. თექვსმეტობით სისტემას ადამიანები იყენებენ იმიტომ, რომ თითო თექვსმეტობითი ციფრი ზუსტად ოთხ ორობით ციფრს შეესაბამება, რაც გრძელ ორობით მწკრივს მეოთხედ სიგრძემდე ამცირებს და უკან გადაყვანა მარტივი რჩება. ათობითი სისტემა კი ყოველდღიური ადამიანური მათემატიკისთვის რჩება, სადაც კონვენციას ათი თითი და არა ორი ძაბვა ადგენს.

როგორ მუშაობს რიცხვის ერთი სისტემიდან მეორეში გადაყვანა?

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

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

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

ცვლის თუ არა წინამავალი ნულები მნიშვნელობას?

არა. წინამავალი ნულები არცერთ სისტემაში არ ცვლის რიცხვის მნიშვნელობას, ამიტომ 0x00FF და 0xFF ერთი და იგივე რიცხვია. ისინი მხოლოდ იმისთვის ინახება, რომ მნიშვნელობა ფიქსირებულ სიგანემდე შეივსოს — მაგალითად, ბაიტის რვა ორობით ან ორ თექვსმეტობით ციფრად ჩვენებისთვის, რაც სვეტებს ასწორებს და ბიტების პოზიციების წაკითხვას აადვილებს.

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

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