ბინარული კოდის გაშიფვრა ონლაინ. ორობითი კოდი

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

ბინარული კოდის გაშიფვრა

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

ორობითი დეკოდირება: ბინის სტრიქონი, რომელიც ინტერპრეტირებულია, როგორც ორობითი რიცხვი, შეიძლება გადაკეთდეს ათობითი რიცხვად. მაგალითად, მცირე ასო a, თუ წარმოდგენილია ბიტის სტრიქონით 01100001 (როგორც სტანდარტულ ASCII კოდში), ასევე შეიძლება წარმოდგენილი იყოს როგორც ათობითი რიცხვი 97. ორობითი კოდის ტექსტად გადაქცევა იგივე პროცედურაა, უბრალოდ პირიქით.

Როგორ მუშაობს

რისგან შედგება ბინარული კოდი? კოდი, რომელიც გამოიყენება ციფრულ კომპიუტერებში, ეფუძნება მხოლოდ ორ შესაძლო მდგომარეობას: on. და off, ჩვეულებრივ აღინიშნება ნულით და ერთით. მაშინ როცა ათობითი სისტემაში, რომელიც იყენებს 10 ციფრს, თითოეული პოზიცია არის 10-ის ჯერადი (100, 1000 და ა.შ.), ორობით სისტემაში, თითოეული ციფრის პოზიცია არის 2-ის ჯერადი (4, 8, 16 და ა. . ორობითი კოდის სიგნალი არის ელექტრული იმპულსების სერია, რომელიც წარმოადგენს რიცხვებს, სიმბოლოებს და შესასრულებელ ოპერაციებს.

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

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

ორობითი კოდის მიმოხილვა

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

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

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

ორობითი ნომერი

მათემატიკასა და ციფრულ ელექტრონიკაში ორობითი რიცხვი არის რიცხვი, რომელიც გამოხატულია საბაზისო-2 რიცხვების სისტემაში, ან ბინარული რიცხვითი სისტემაში, რომელიც იყენებს მხოლოდ ორ სიმბოლოს: 0 (ნულოვანი) და 1 (ერთი).

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

ამბავი

თანამედროვე ორობითი რიცხვების სისტემა, როგორც ორობითი კოდის საფუძველი, გამოიგონა გოტფრიდ ლაიბნიცმა 1679 წელს და წარმოადგინა თავის სტატიაში „ორობითი არითმეტიკის განმარტება“. ორობითი რიცხვები ცენტრალური იყო ლაიბნიცის თეოლოგიაში. მას სჯეროდა, რომ ორობითი რიცხვები სიმბოლურად განასახიერებდა ქრისტიანულ იდეას კრეატიულობის ex nihilo, ანუ არაფრისგან ქმნილების შესახებ. ლაიბნიცი ცდილობდა ეპოვა სისტემა, რომელიც გარდაქმნიდა ლოგიკის სიტყვიერ განცხადებებს წმინდა მათემატიკურ მონაცემებად.

ორობითი სისტემები, რომლებიც ლაიბნიცამდე იყო, ძველ სამყაროშიც არსებობდა. ამის მაგალითია ჩინური ორობითი სისტემა I Ching, სადაც მკითხაობის ტექსტი ეფუძნება ინის და იანგის ორმაგობას. აზიასა და აფრიკაში შეტყობინებების დაშიფვრისთვის გამოიყენებოდა ორობითი ტონებით გაჭრილი დასარტყამი. ინდოელმა მეცნიერმა პინგალამ (დაახლოებით ძვ. წ. V ს.) შეიმუშავა ორობითი სისტემა პროსოდიის აღსაწერად თავის ნაშრომში Chandashutrema.

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

ახალი დრო

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

კიდევ ერთმა მათემატიკოსმა და ფილოსოფოსმა, სახელად ჯორჯ ბულმა, 1847 წელს გამოაქვეყნა ნაშრომი სახელწოდებით "ლოგიკის მათემატიკური ანალიზი", რომელშიც აღწერილია ლოგიკის ალგებრული სისტემა, რომელიც დღეს ცნობილია როგორც ბული ალგებრა. სისტემა ეფუძნებოდა ორობით მიდგომას, რომელიც შედგებოდა სამი ძირითადი ოპერაციისაგან: AND, OR და NOT. ეს სისტემა არ ამოქმედდა მანამ, სანამ MIT-ის კურსდამთავრებულმა, სახელად კლოდ შენონმა, შენიშნა, რომ ლოგიკური ალგებრა, რომელსაც ის სწავლობდა, ელექტრული წრედის მსგავსი იყო.

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

ბინარული კოდის სხვა ფორმები

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

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

ამერიკული სტანდარტული კოდი ინფორმაციის ურთიერთგაცვლისთვის (ASCII) იყენებს 7-ბიტიან ორობით კოდს კომპიუტერებში, საკომუნიკაციო მოწყობილობებში და სხვა მოწყობილობებში ტექსტისა და სხვა სიმბოლოების წარმოსადგენად. თითოეულ ასოს ან სიმბოლოს ენიჭება რიცხვი 0-დან 127-მდე.

ორობითი კოდირებული ათობითი ან BCD არის მთელი რიცხვების ორობითი კოდირებული წარმოდგენა, რომელიც იყენებს 4-ბიტიან გრაფიკს ათობითი ციფრების დაშიფვრისთვის. ოთხ ბინარულ ბიტს შეუძლია 16-მდე განსხვავებული მნიშვნელობის კოდირება.

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

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

განაცხადი

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

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

ტექსტის კოდირება.

კომპიუტერული თეორიის მიხედვით, ნებისმიერი ტექსტი შედგება ინდივიდუალური სიმბოლოებისგან. ეს სიმბოლოები მოიცავს: ასოებს, რიცხვებს, მცირე პუნქტუაციას, სპეციალურ სიმბოლოებს (“”, №, () და ა.შ.), ისინი ასევე შეიცავს სიტყვებს შორის სივრცეებს.

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

ანბანში აღებული სიმბოლოების რაოდენობა წარმოადგენს მის ძალას.

ინფორმაციის რაოდენობა შეიძლება განისაზღვროს ფორმულით: N = 2b

  • N არის იგივე ძალა (ბევრი სიმბოლო),
  • b - ბიტი (აღებული სიმბოლოს წონა).

256-ის შემცველი ანბანი შეიძლება შეიცავდეს თითქმის ყველა საჭირო სიმბოლოს. ასეთ ანბანებს SUFFICIENT-ს უწოდებენ.

თუ ავიღებთ 256 ტევადობის ანბანს და გავითვალისწინებთ, რომ 256 = 28

  • 8 ბიტს ყოველთვის უწოდებენ 1 ბაიტს:
  • 1 ბაიტი = 8 ბიტი.

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

როგორ შეიძლება გამოიყურებოდეს ტექსტური ინფორმაცია კომპიუტერის მეხსიერებაში?

ნებისმიერი ტექსტი იბეჭდება კლავიატურაზე, კლავიატურის კლავიშებზე, ვხედავთ ჩვენთვის ნაცნობ ნიშნებს (რიცხვები, ასოები და ა.შ.). ისინი შედიან კომპიუტერის RAM-ში მხოლოდ ბინარული კოდის სახით. ორობითი კოდი თითოეული სიმბოლოსთვის ჰგავს რვანიშნა რიცხვს, მაგალითად 00111111.

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

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

ეს პროცესი პირობითია და ჩვენ გვაქვს უფლება მოვიფიქროთ განსხვავებული სიმბოლოების დაშიფვრის გზები. ანბანის თითოეულ სიმბოლოს აქვს საკუთარი ნომერი 0-დან 255-მდე. და თითოეულ რიცხვს ენიჭება კოდი 00000000-დან 11111111-მდე.

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

ASCII (ან Asci) გახდა პერსონალური კომპიუტერების საერთაშორისო სტანდარტი. ცხრილი ორი ნაწილისგან შედგება.

პირველი ნახევარი არის ASCII ცხრილისთვის. (ეს იყო პირველი ტაიმი, რომელიც გახდა სტანდარტი.)

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

რუსული ანბანისთვისაც მიჰყვებიან თანმიმდევრული კოდირების პრინციპი.

დღესდღეობით, ჩვენს დროში, ისინი იყენებენ მთლიანს ხუთი კოდირების სისტემარუსული ანბანი (KOI8-R, Windows. MS-DOS, Macintosh და ISO). კოდირების სისტემების რაოდენობისა და ერთი სტანდარტის არარსებობის გამო, ძალიან ხშირად წარმოიქმნება გაუგებრობები რუსული ტექსტის კომპიუტერულ ფორმაში გადატანისას.

ერთ-ერთი პირველი რუსული ანბანის კოდირების სტანდარტებიხოლო პერსონალურ კომპიუტერებზე განიხილავენ KOI8 („ინფორმაციის გაცვლის კოდი, 8-ბიტი“). ეს კოდირება გამოიყენებოდა სამოცდაათიანი წლების შუა ხანებში ES კომპიუტერების სერიაზე, ხოლო ოთხმოციანი წლების შუა ხანებიდან დაიწყო მისი გამოყენება რუსულ ენაზე თარგმნილ პირველ UNIX ოპერაციულ სისტემებში.

ოთხმოცდაათიანი წლების დასაწყისიდან, ეგრეთ წოდებული დროიდან, როდესაც დომინირებდა MS DOS ოპერაციული სისტემა, გამოჩნდა კოდირების სისტემა CP866 ("CP" ნიშნავს "კოდის გვერდი").

გიგანტური კომპიუტერული კომპანიები APPLE, თავიანთი ინოვაციური სისტემით, რომლითაც ისინი მუშაობდნენ (Mac OS), იწყებენ საკუთარი სისტემის გამოყენებას MAC ანბანის კოდირებისთვის.

სტანდარტების საერთაშორისო ორგანიზაცია (ISO) რუსული ენის კიდევ ერთ სტანდარტს ადგენს ანბანის კოდირების სისტემა, რომელსაც ISO 8859-5 ჰქვია.

და ამ დღეებში ანბანის კოდირების ყველაზე გავრცელებული სისტემა გამოიგონეს Microsoft Windows-ში და ჰქვია CP1251.

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

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

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

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

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

როდესაც პირველად გაეცანით კომპიუტერებსა და მიკროპროცესორებს, შეიძლება გაჩნდეს კითხვა - "როგორ გადავიტანოთ ტექსტი ბინარულ კოდში?" თუმცა, ეს ტრანსფორმაცია უმარტივესი ქმედებაა! ამისათვის თქვენ უნდა გამოიყენოთ ნებისმიერი ტექსტური რედაქტორი. უმარტივესი Notepad პროგრამა, რომელიც შედის Windows ოპერაციულ სისტემაში, ასევე შესაფერისია. მსგავსი რედაქტორები წარმოდგენილია პროგრამირების ყველა გარემოში ისეთი ენებისთვის, როგორიცაა SI, Pascal ან Java. უნდა აღინიშნოს, რომ ყველაზე გავრცელებული ტექსტური რედაქტორი, Word, არ არის შესაფერისი მარტივი ტექსტიდან ორობით კონვერტაციისთვის. ეს სატესტო რედაქტორი შეაქვს დამატებითი ინფორმაციის უზარმაზარ რაოდენობას, როგორიცაა ასოების ფერი, დახრილი, ხაზგასმული, ენა, რომელშიც იწერება კონკრეტული ფრაზა და შრიფტი.

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

ცხრილი 1ლათინური ასოების გამოსახვის ცხრილი ბინარულ კოდში (ASCII)

ათწილადი კოდი Hex კოდი ჩვენების სიმბოლო მნიშვნელობა
0 00 NUL
1 01 (საკონტროლო სიტყვის ჩვენება)
2 02 (პირველი სიტყვა გადმოცემულია)
3 03 ETX (გადაცემის ბოლო სიტყვა)
4 04 EOT (გადაცემის დასასრული)
5 05 ENQ (ინიციალიზაცია)
6 06 ACK (დადასტურება)
7 07 BEL
8 08 ბ.ს.
9 09 HT (ჰორიზონტალური ჩანართი)
10 0A LF (ხაზის მიწოდება)
11 0B VT (ვერტიკალური ჩანართი)
12 FF (შემდეგი გვერდი)
13 0D CR (ვაგონის დაბრუნება)
14 0E SO (ორმაგი სიგანე)
15 0F SI (მყარი ბეჭედი)
16 10 DLE
17 11 DC1
18 12 DC2 (კომპაქტური ბეჭდვის გაუქმება)
19 13 DC3 (მზად)
20 14 DC4 (ორმაგი სიგანის გაუქმება)
21 15 § NAC (არა აღიარება)
22 16 SYN
23 17 ETB
24 18 შეუძლია
25 19 ე.მ.
26 1A SUB
27 1ბ ESC (საკონტროლო თანმიმდევრობის დასაწყისი)
28 1C FS
29 1D გ.ს.
30 1E რ.ს.
31 1F ᲩᲕᲔᲜ
32 20 სივრცე
33 21 ! ძახილის ნიშანი
34 22 « კუთხის სამაგრი
35 23 # ნომრის ნიშანი
36 24 $ ვალუტის ნიშანი (დოლარი)
37 25 % პროცენტის ნიშანი
38 26 & ამპერსანდი
39 27 " აპოსტროფი
40 28 ( გასახსნელი ფრჩხილი
41 29 ) დახურვის ფრჩხილები
42 2A * ვარსკვლავი
43 2B + პლუს ნიშანი
44 2C , მძიმე
45 2D - მინუს ნიშანი
46 2E . Წერტილი
47 2F / ფრაქციული ხაზი
48 30 0 ციფრი ნული
49 31 1 Ნომერი პირველი
50 32 2 Ნომერი ორი
51 33 3 Ნომერი სამი
52 34 4 ნომერი ოთხი
53 35 5 ნომერი ხუთი
54 36 6 ნომერი ექვსი
55 37 7 ნომერი შვიდი
56 38 8 ნომერი რვა
57 39 9 Ნომერი ცხრა
58 3A : მსხვილი ნაწლავი
59 3ბ ; მძიმით
60 3C < ნიშანიზე ნაკლები
61 3D = თანაბარი ნიშანი
62 3E > მეტი ნიშანი
63 3F ? Კითხვის ნიშანი
64 40 @ კომერციული სართული
65 41 დიდი ლათინური ასო A
66 42 დიდი ლათინური ასო B
67 43 C დიდი ლათინური ასო C
68 44 დიდი ლათინური ასო D
69 45 დიდი ლათინური ასო E
70 46 დიდი ლათინური ასო F
71 47 დიდი ლათინური ასო G
72 48 დიდი ლათინური ასო H
73 49 მე დიდი ლათინური ასო I
74 4A დიდი ლათინური ასო J
75 4B დიდი ლათინური ასო K
76 4C დიდი ლათინური ასო L
77 4D დიდი ლათინური ასო
78 4E დიდი ლათინური ასო N
79 4F დიდი ლათინური ასო O
80 50 დიდი ლათინური ასო P
81 51 დიდი ლათინური ასო
82 52 დიდი ლათინური ასო R
83 53 დიდი ლათინური ასო S
84 54 დიდი ლათინური ასო T
85 55 დიდი ლათინური ასო U
86 56 დიდი ლათინური ასო V
87 57 დიდი ლათინური ასო W
88 58 X დიდი ლათინური ასო X
89 59 დიდი ლათინური ასო Y
90 5A დიდი ლათინური ასო Z
91 5ბ [ კვადრატული ფრჩხილის გახსნა
92 5C \ უკანა ხაზი
93 5D ] კვადრატული ფრჩხილის დახურვა
94 5E ^ "სახურავი"
95 5 _ ხაზი გაუსვით პერსონაჟს
96 60 ` აპოსტროფი
97 61 ლათინური პატარა ასო a
98 62 ლათინური პატარა ასო ბ
99 63 ლათინური პატარა ასო c
100 64 ლათინური პატარა ასო დ
101 65 ლათინური პატარა ასო ე
102 66 ლათინური პატარა ასო f
103 67 ლათინური პატარა ასო გ
104 68 ლათინური პატარა ასო h
105 69 მე ლათინური პატარა ასო i
106 6A ლათინური პატარა ასო j
107 6ბ ლათინური პატარა ასო k
108 6C ლათინური პატარა ასო l
109 6D ლათინური პატარა ასო m
110 6E ლათინური პატარა ასო n
111 6F ლათინური პატარა ასო o
112 70 გვ ლათინური მცირე ასო პ
113 71 ლათინური პატარა ასო q
114 72 ლათინური პატარა ასო r
115 73 ლათინური პატარა ასო s
116 74 ლათინური პატარა ასო t
117 75 u ლათინური პატარა ასო u
118 76 ლათინური მცირე ასო v
119 77 ლათინური პატარა ასო w
120 78 x ლათინური მცირე ასო x
121 79 ლათინური პატარა ასო y
122 7A ლათინური პატარა ასო z
123 7ბ { გასახსნელი სამაგრი
124 7C | ვერტიკალური ბარი
125 7D } დახურვის სამაგრი
126 7E ~ ტილდი
127 7F

ASCII სიმბოლოების ცხრილის კლასიკურ ვერსიაში არ არის რუსული ასოები და ის შედგება 7 ბიტისაგან. თუმცა, მოგვიანებით ეს ცხრილი გაფართოვდა 8 ბიტამდე და რუსული ასოები ბინარულ კოდში და ფსევდოგრაფიულ სიმბოლოებში გამოჩნდა ზედა 128 სტრიქონში. ზოგადად, მეორე ნაწილი შეიცავს სხვადასხვა ქვეყნის ეროვნულ ანბანებს და რუსული ასოები მხოლოდ ერთ-ერთი შესაძლო ნაკრებია (855); შეიძლება იყოს ფრანგული (863), გერმანული (1141) ან ბერძნული (737) ცხრილი. ცხრილი 2 გვიჩვენებს რუსული ასოების ორობით კოდში წარმოდგენის მაგალითს.

ცხრილი 2.რუსული ასოების გამოსახულების ცხრილი ბინარულ კოდში (ASCII)

ათწილადი კოდი Hex კოდი ჩვენების სიმბოლო მნიშვნელობა
128 80 დიდი რუსული ასო A
129 81 დიდი რუსული ასო B
130 82 IN დიდი რუსული ასო B
131 83 დიდი რუსული ასო გ
132 84 დიდი რუსული ასო D
133 85 დიდი რუსული ასო E
134 86 და დიდი რუსული ასო ჟ
135 87 დიდი რუსული ასო Z
136 88 და დიდი რუსული ასო I
137 89 დიდი რუსული ასო Y
138 8A TO დიდი რუსული ასო K
139 8B დიდი რუსული ასო L
140 8C დიდი რუსული ასო M
141 8D დიდი რუსული ასო N
142 8E შესახებ დიდი რუსული ასო O
143 8F დიდი რუსული ასო P
144 90 დიდი რუსული ასო R
145 91 თან დიდი რუსული ასო S
146 92 დიდი რუსული ასო T
147 93 დიდი რუსული ასო U
148 94 დიდი რუსული ასო F
149 95 X დიდი რუსული ასო X
150 96 C დიდი რუსული ასო T
151 97 დიდი რუსული ასო CH
152 98 დიდი რუსული ასო Ш
153 99 SCH დიდი რუსული ასო Ш
154 9A კომერსანტი დიდი რუსული ასო Ъ
155 9ბ დიდი რუსული ასო Y
156 9C დიდი რუსული ასო ბ
157 9D დიდი რუსული ასო E
158 9E YU დიდი რუსული ასო Yu
159 9F მე დიდი რუსული ასო I
160 A0 პატარა რუსული ასო ა
161 A1 პატარა რუსული ასო ბ
162 A2 რუსული მცირე ასო ვ
163 A3 პატარა რუსული ასო გ
164 A4 პატარა რუსული ასო დ
165 A5 პატარა რუსული ასო ე
166 A6 და პატარა რუსული ასო z
167 A7 პატარა რუსული ასო z
168 A8 და პატარა რუსული ასო და
169 A9 მცირე რუსული ასო th
170 ᲐᲐ. რომ რუსული მცირე ასო კ
171 AB პატარა რუსული ასო l
172 A.C. მცირე რუსული ასო მ
173 ახ.წ პატარა რუსული ასო n
174 A.E. რუსული პატარა ასო ო
175 ა.ფ. მცირე რუსული ასო გვ
176 B0
177 B1
178 B2
179 B3 ფსევდოგრაფიული სიმბოლო
180 B4 ფსევდოგრაფიული სიმბოლო
181 B5 ფსევდოგრაფიული სიმბოლო
182 B6 ფსევდოგრაფიული სიმბოლო
183 B7 ფსევდოგრაფიული სიმბოლო
184 B8 ფსევდოგრაფიული სიმბოლო
185 B9 ფსევდოგრაფიული სიმბოლო
186 ბ.ა. ფსევდოგრაფიული სიმბოლო
187 BB ფსევდოგრაფიული სიმბოლო
188 ძვ.წ. ფსევდოგრაფიული სიმბოლო
189 BD ფსევდოგრაფიული სიმბოლო
190 BE ფსევდოგრაფიული სიმბოლო
191 ბ.ფ. ფსევდოგრაფიული სიმბოლო
192 C0 ფსევდოგრაფიული სიმბოლო
193 C1 ფსევდოგრაფიული სიმბოლო
194 C2 ფსევდოგრაფიული სიმბოლო
195 C3 ფსევდოგრაფიული სიმბოლო
196 C4 ფსევდოგრაფიული სიმბოლო
197 C5 ფსევდოგრაფიული სიმბოლო
198 C6 ფსევდოგრაფიული სიმბოლო
199 C7 ფსევდოგრაფიული სიმბოლო
200 C8 ფსევდოგრაფიული სიმბოლო
201 C9 ფსევდოგრაფიული სიმბოლო
202 C.A. ფსევდოგრაფიული სიმბოლო
203 C.B. ფსევდოგრაფიული სიმბოლო
204 CC ფსევდოგრაფიული სიმბოლო
205 CD ფსევდოგრაფიული სიმბოლო
206 C.E. ფსევდოგრაფიული სიმბოლო
207 CF ფსევდოგრაფიული სიმბოლო
208 D0 ფსევდოგრაფიული სიმბოლო
209 D1 ფსევდოგრაფიული სიმბოლო
210 D2 ფსევდოგრაფიული სიმბოლო
211 D3 ფსევდოგრაფიული სიმბოლო
212 D4 ფსევდოგრაფიული სიმბოლო
213 D5 ფსევდოგრაფიული სიმბოლო
214 D6 ფსევდოგრაფიული სიმბოლო
215 D7 ფსევდოგრაფიული სიმბოლო
216 D8 ფსევდოგრაფიული სიმბოლო
217 D9 ფსევდოგრაფიული სიმბოლო
218 დ.ა. ფსევდოგრაფიული სიმბოლო
219 დ.ბ.
220 DC
221 DD
222 DE
223 DF
224 E0 პატარა რუსული ასო რ
225 E1 თან რუსული პატარა ასო ს
226 E2 პატარა რუსული ასო ტ
227 E3 ზე რუსული პატარა ასო u
228 E4 პატარა რუსული ასო ვ
229 E5 X რუსული პატარა ასო x
230 E6 პატარა რუსული ასო გ
231 E7 პატარა რუსული ასო თ
232 E8 მცირე რუსული ასო შ
233 E9 სჩ რუსული მცირე ასო შჩ
234 ე.ა. ъ პატარა რუსული ასო ъ
235 ე.ბ. პატარა რუსული ასო ы
236 ე.წ. პატარა რუსული ასო ь
237 ედ უჰ პატარა რუსული ასო ე
238 ე.ე. იუ პატარა რუსული ასო yu
239 ე.ფ. მე მცირე რუსული ასო ი
240 F0 იო დიდი რუსული ასო იო
241 F1 პატარა რუსული ასო ё
242 F2 Є
243 F3 є
244 F4 Ї
245 F5 Ї
246 F6 Ў
247 F7 ў
248 F8 ° ხარისხის ნიშანი
249 F9 გამრავლების ნიშანი (წერტილი)
250 ფ.ა. ·
251 FB რადიკალი (ძირის აღება)
252 F.C. ნომრის ნიშანი
253 FD ¤ ვალუტის ნიშანი (რუბლი)
254 ფ.ე.
255 FF

ტექსტების წერისას, ორობითი კოდების გარდა, რომლებიც პირდაპირ ასახავს ასოებს, გამოიყენება კოდები, რომლებიც მიუთითებენ ახალ ხაზზე გადასვლას და კურსორის დაბრუნებას (ვაგონის დაბრუნება) ხაზის ნულოვან პოზიციაზე. ეს სიმბოლოები ჩვეულებრივ გამოიყენება ერთად. მათი ორობითი კოდები შეესაბამება ათობითი რიცხვებს - 10 (0A) და 13 (0D). მაგალითად, ქვემოთ მოცემულია ამ გვერდის ტექსტის ნაწილი (memory dump). მისი პირველი პუნქტი იწერება ამ განყოფილებაში. შემდეგი ფორმატი გამოიყენება მეხსიერების ნაგავსაყრელში ინფორმაციის საჩვენებლად:

  • პირველი სვეტი შეიცავს ხაზის პირველი ბაიტის ორობით მისამართს
  • შემდეგი თექვსმეტი სვეტი შეიცავს ტექსტურ ფაილში მოცემულ ბაიტებს. ბაიტის ნომრის უფრო მოსახერხებლად დასადგენად, მერვე სვეტის შემდეგ დგება ვერტიკალური ხაზი. ბაიტები, მოკლედ, წარმოდგენილია თექვსმეტობით კოდში.
  • ბოლო სვეტში ეს იგივე ბაიტები წარმოდგენილია როგორც გამოსახული ანბანური სიმბოლოები
00000000: 82 E1 A5 20 E1 A8 AC A2 ¦ AE AB EB 20 A8 20 A1 E3 ყველა სიმბოლო და 00000010: AA A2 EB 20 AC AE A3 E3 ¦ E2 20 A1 EB EB 20 A00 კოეფიციენტი A000 ე A4 A8 E0 AE A2 ¦ A0 AD EB 20 AF E0 A8 20 კოდირებული 00000030: AF AE AC AE E9 A8 ¦ A2 ¦ AE E1 EC AC A8 20 A4 A2 რვაკარიანი დახმარება 0070000 A8 AC A2 AE AB AE A2 2E ძირითადი სიმბოლოები. 00000050: 0D 0A 8D A0 A8 A1 AE AB ¦ A5 A5 20 E0 A0 E1 AF E0 ♪◙ყველაზე გავრცელებული 00000060: AE E1 E2 E0 A0 AD A5 AD ¦ AD EB1 AC00 A8 A0 AC A8 20 EF ¦ A2 AB EF EE E2 E1 E1 EF 20 ადამიანია 00000080: E2 A0 A1 AB A8 E6 EB 20 ¦ 41 53 43 43 49 49 49 20 E1 20 ASCII მაგიდები 00000090: AD A0 E6 AE8 AE AD A0 AB ¦ EC რეკლამა EB AC A8 0D 0A E0 ეროვნული♪◙р 000000A0: A0 E1 E8 A8 E0 A5 AD A8 ¦ EF AC A8 2C 20 AF E0 A8 გაფართოებები, 000000B0-ზე: AC A5 AD EF 5 ¦ EF 02 E9 A8 53 იცვლება DOS 000000C0-ში: 20 28 A8 20 AA AE E2 AE ¦ E0 EB A5 20 AC AE A6 AD (და რომლის გამოყენებაც შესაძლებელია 000000D0: AE 20 A8 E1 AF AE AB EC ¦ A702 AEC გამოყენება d 000000E0 : AB EF 20 A7 A0 AF A8 E1 ¦ A8 0D 0A E2 A5 AA E1 E2 ჩანაწერისთვის♪◙ტექსტი 000000F0: AE A2 20 A2 20 AC A8 AA ¦ E000E1 მიკროპროცესი E00E1 : E1 AE E0 A0 E5 29 2C 20 ¦ A8 20 E2 A0 A1 AB A8 E6 sorah), და ცხრილები 00000110: EB 20 41 4E 53 49 2C 20 ¦ AF E0 A8 AC A5 AD EF00 გამოყენება: EF00 A5 E1 EF 20 A2 20 ¦ 57 49 4E 44 4F 57 53 2E ხელმისაწვდომია WINDOWS-ში. 00000130: 20 82 20 E2 A0 A1 AB A8 ¦ E6 A0 E5 0D 0A 41 53 43 ცხრილებში♪◙ASC 00000140: 49 49 20 A8 20 41 ¦A0 E5 0D 53 0 0000150: 20 31 32 38 20 E1 A8 AC ¦ A2 AE AB AE A2 20 E1 AE 128 სიმბოლო 00000160: A2 AF A0 A4 A0 EE E2 2E ¦ 20 82 20 ED E2 AE A9 შემოდგომა. ამ 00000170: E7 A0 E1 E2 A8 20 E2 A0 ¦ A1 AB A8 E6 EB 20 E1 AE მაგიდის ნაწილი 00000180: A4 A5 E0 A6 A0 E2 E1 EF ¦ 0D 0A E1 A8 ◙ ACcharact 00000190: EB 20 E6 A8 E4 E0 2C 20 ¦ A7 AD A0 AA AE A2 20 AF ნომრები, ნიშნები p 000001A0: E0 A5 AF A8 AD A0 AD A8 ¦ EF 2C 20 A200B, ლათინური A20001 A5 20 A1 E3 AA A2 EB 20 A2 A5 E0 E5 AD 0A E3 AF E0 A0 A2 ოსტატები და ♪◙კონტროლერები 000001E0: AB EF EE E9 A8 A5 20 E1 ¦ A8 AC A2 AE AB2 სიმბოლოები. 000001F0: 8D A0 E6 A8 AE AD A0 AB ¦ EC AD EB A5 20 E0 A0 E1 ეროვნული რბოლები 00000200: E8 A8 E0 A5 AD A8 EF 20 ¦ E1 A8 AC A2 AE AB 1000 გაფართოების სიმბოლო E2 A2 A2 A2 AB A8 ¦ E6 20 A8 20 E1 A8 AC A2 ცხრილები და სიმბოლოები 00000220: AE AB EB 0D 0A AF E1 A5 ¦ A2 A4 AE A3 E0 A0 E4 A8 ფსევდოგრაფები 000000230: E2 A5000230 E2 E4 A8 EF 20 A2 20 ki შეიცავს 00000240: AF AE E1 AB A5 A4 AD A8 ¦ E5 20 31 32 38 20 AA AE ბოლო 128 kos 00000250: A4 A0 E5 20 ED E2 A2 A8 A8 ამ ცხრილებიდან, 00000260: 20 AF AE E2 AE AC E3 ¦ 20 E0 E1 E1 AA A8 ამიტომ რუსები 00000270: 0A E2 AA E1 EB ¦ 20 A2 20 AE AF A5 E0 ♪ 0 AD02 ოპერაში 00000270 ბ E5 20 ¦ E1 A8 E1 E2 A5 AC A0 E5 tion სისტემები 00000290: 20 44 4F 53 20 A8 20 57 ¦ 49 4E 44 4F 57 53 20 AD DOS და WINDOWS A000002 A000002 ¦ A0 EE E2 2E 0D 0A e ემთხვევა. ♪◙

ზემოთ მოყვანილ მაგალითში ხედავთ, რომ ტექსტის პირველი ხაზი 80 ბაიტს იკავებს. პირველი ბაიტი 82 შეესაბამება ასო "B". მეორე ბაიტი E1 შეესაბამება ასო "c". მესამე ბაიტი A5 შეესაბამება ასო "ე". შემდეგი ბაიტი 20 აჩვენებს ცარიელ ადგილს სიტყვებს შორის (სივრცე) " ". ბაიტი 81 და 82 შეიცავს სატრანსპორტო დაბრუნების და ხაზის მიწოდების სიმბოლოებს 0D 0A. ამ სიმბოლოებს ვპოულობთ ბინარულ მისამართზე 00000050: წყაროს ტექსტის შემდეგი სტრიქონი არ არის 16-ის ჯერადი (მისი სიგრძეა 76 ასო), ამიტომ მისი დასასრულის საპოვნელად ჯერ უნდა ვიპოვოთ სტრიქონი 000000E0: და დავთვალოთ მისგან ცხრა სვეტი. ვაგონის დაბრუნების და ხაზის მიწოდების ბაიტები 0D 0A ისევ იქ იწერება. დანარჩენი ტექსტი ზუსტად ასეა გაანალიზებული.

ფაილის ბოლო განახლების თარიღი: 12/04/2018

ლიტერატურა:

სტატიასთან ერთად „ტექსტების ორობითი კოდით წერა“ წაიკითხეთ:

ბინარული რიცხვების წარმოდგენა კომპიუტერის ან მიკროკონტროლერის მეხსიერებაში
http://site/proc/IntCod.php

ზოგჯერ მოსახერხებელია რიცხვების შენახვა პროცესორის მეხსიერებაში ათობითი ფორმით
http://site/proc/DecCod.php

სტანდარტული მცურავი წერტილის ნომრის ფორმატები კომპიუტერებისთვის და მიკროკონტროლერებისთვის
http://site/proc/float/

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

სიმბოლოთა ერთობლიობას, რომლითაც იწერება ტექსტი, ეწოდება ანბანი.

ანბანის სიმბოლოების რაოდენობა მისია ძალა.

ინფორმაციის მოცულობის განსაზღვრის ფორმულა: N=2ბ,

სადაც N არის ანბანის ძალა (სიმბოლოების რაოდენობა),

b – ბიტების რაოდენობა (სიმბოლოს საინფორმაციო წონა).

256 სიმბოლოს ტევადობის ანბანი იტევს თითქმის ყველა საჭირო სიმბოლოს. ამ ანბანს ე.წ საკმარისი.

იმიტომ რომ 256 = 2 8, მაშინ 1 სიმბოლოს წონა არის 8 ბიტი.

საზომ ერთეულს 8 ბიტი ერქვა 1 ბაიტი:

1 ბაიტი = 8 ბიტი.

კომპიუტერული ტექსტის თითოეული სიმბოლოს ორობითი კოდი იკავებს მეხსიერების 1 ბაიტს.

როგორ არის წარმოდგენილი ტექსტური ინფორმაცია კომპიუტერის მეხსიერებაში?

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

ახლა ჩნდება კითხვა, რომელი რვა-ბიტიანი ორობითი კოდი მივანიჭოთ თითოეულ სიმბოლოს.

გასაგებია, რომ ეს პირობითი საკითხია, შეგიძლიათ მრავალი კოდირების მეთოდი მოიფიქროთ.

კომპიუტერის ანბანის ყველა სიმბოლო დანომრილია 0-დან 255-მდე. თითოეულ რიცხვს შეესაბამება რვაბიტიანი ორობითი კოდი 00000000-დან 11111111-მდე. ეს კოდი უბრალოდ სიმბოლოს სერიული ნომერია ორობითი რიცხვების სისტემაში.

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

სხვადასხვა ტიპის კომპიუტერები იყენებენ სხვადასხვა კოდირების ცხრილებს.

ცხრილი გახდა კომპიუტერების საერთაშორისო სტანდარტი ASCII(წაიკითხეთ ასკი) (American Standard Code for Information Interchange).

ASCII კოდის ცხრილი დაყოფილია ორ ნაწილად.

ცხრილის მხოლოდ პირველი ნახევარია საერთაშორისო სტანდარტი, ე.ი. სიმბოლოები რიცხვებით 0 (00000000), მდე 127 (01111111).

ASCII კოდირების ცხრილის სტრუქტურა

Სერიული ნომერი

კოდი

სიმბოლო

0 - 31

00000000 - 00011111

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

32 - 127

00100000 - 01111111

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

128 - 255

10000000 - 11111111

მაგიდის ალტერნატიული ნაწილი (რუსული).
ASCII კოდების ცხრილის მეორე ნახევარს, რომელსაც ეწოდება კოდის გვერდი (128 კოდი, დაწყებული 10000000-დან და დამთავრებული 11111111-ით), შეიძლება ჰქონდეს სხვადასხვა ვარიანტები, თითოეულ ვარიანტს აქვს საკუთარი ნომერი.
კოდის გვერდი ძირითადად გამოიყენება ლათინურის გარდა ეროვნული ანბანების დასაყენებლად. რუსულ ეროვნულ დაშიფვრებში, რუსული ანბანის სიმბოლოები მოთავსებულია ცხრილის ამ ნაწილში.

ASCII კოდების ცხრილის პირველი ნახევარი


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

რუსული ანბანის ასოებისთვის ასევე დაცულია თანმიმდევრული კოდირების პრინციპი.

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


სამწუხაროდ, ამჟამად არსებობს ხუთი განსხვავებული კირილიცის კოდირება (KOI8-R, Windows. MS-DOS, Macintosh და ISO). ამის გამო, ხშირად წარმოიქმნება პრობლემები რუსული ტექსტის ერთი კომპიუტერიდან მეორეზე, ერთი პროგრამული სისტემიდან მეორეზე გადატანასთან დაკავშირებით.

ქრონოლოგიურად, კომპიუტერებზე რუსული ასოების კოდირების ერთ-ერთი პირველი სტანდარტი იყო KOI8 ("ინფორმაციის გაცვლის კოდი, 8-ბიტი"). ეს კოდირება გამოიყენებოდა ჯერ კიდევ 70-იან წლებში ES კომპიუტერული სერიის კომპიუტერებზე, ხოლო 80-იანი წლების შუა პერიოდიდან დაიწყო მისი გამოყენება UNIX ოპერაციული სისტემის პირველ რუსიფიცირებულ ვერსიებში.

90-იანი წლების დასაწყისიდან, MS DOS ოპერაციული სისტემის დომინირების დროიდან, რჩება CP866 კოდირება ("CP" ნიშნავს "კოდის გვერდი", "კოდის გვერდი").

Apple-ის კომპიუტერები, რომლებიც მუშაობენ Mac OS ოპერაციულ სისტემაზე, იყენებენ Mac-ის საკუთარ დაშიფვრას.

გარდა ამისა, საერთაშორისო სტანდარტების ორგანიზაციამ (ISO) დაამტკიცა კიდევ ერთი კოდირება, სახელწოდებით ISO 8859-5, როგორც რუსული ენის სტანდარტი.

ამჟამად გამოყენებული ყველაზე გავრცელებული კოდირება არის Microsoft Windows, შემოკლებით CP1251.

90-იანი წლების ბოლოდან, სიმბოლოების კოდირების სტანდარტიზაციის პრობლემა მოგვარდა ახალი საერთაშორისო სტანდარტის დანერგვით, ე.წ. Unicode. ეს არის 16-ბიტიანი კოდირება, ე.ი. იგი გამოყოფს მეხსიერების 2 ბაიტს თითოეული სიმბოლოსთვის. რა თქმა უნდა, ეს 2-ჯერ ზრდის დაკავებულ მეხსიერების რაოდენობას. მაგრამ ასეთი კოდის ცხრილი იძლევა 65536 სიმბოლოს ჩართვას. Unicode სტანდარტის სრული სპეციფიკაცია მოიცავს მსოფლიოს ყველა არსებულ, გადაშენებულ და ხელოვნურად შექმნილ დამწერლობას, ასევე ბევრ მათემატიკურ, მუსიკალურ, ქიმიურ და სხვა სიმბოლოებს.

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

სიტყვების შიდა წარმოდგენა კომპიუტერის მეხსიერებაში

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

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

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

დათვლა ორობით ფორმატში

ორობით გამოხატულებაში, პირველი ციფრი უდრის 1-ს ათობითი სისტემაში. მეორე ციფრი არის 2, მესამე არის 4, მეოთხე არის 8 და ასე შემდეგ - ყოველ ჯერზე გაორმაგდება. ყველა ამ მნიშვნელობის დამატება მოგცემთ რიცხვს ათობითი ფორმატში.

1111 (ორობითად) = 8 + 4 + 2 + 1 = 15 (ათწილადში)

0-ის აღრიცხვა გვაძლევს 16 შესაძლო მნიშვნელობას ოთხი ბინარული ბიტისთვის. გადაიტანეთ 8 ბიტი და მიიღებთ 256 შესაძლო მნიშვნელობას. ეს გაცილებით მეტ ადგილს იკავებს გამოსასახად, რადგან ოთხი ათობითი ციფრი გვაძლევს 10000 შესაძლო მნიშვნელობას. რა თქმა უნდა, ორობითი კოდი იკავებს მეტ ადგილს, მაგრამ კომპიუტერები ორობით ფაილებს ბევრად უკეთ ესმით ვიდრე ათობითი სისტემა. და ზოგიერთი რამ, როგორიცაა ლოგიკური დამუშავება, ორობითი უკეთესია, ვიდრე ათობითი.

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

რატომ იყენებენ კომპიუტერები ბინარულ ფაილებს?

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

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

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

აქ მოცემულია ტიპიური ტრანზისტორის დიაგრამა:

არსებითად, ის საშუალებას აძლევს დენს მიედინება წყაროდან დრენაჟამდე, თუ დენი არის კარიბჭეში. ეს ქმნის ორობით კლავიშს. მწარმოებლებს შეუძლიათ გააკეთონ ეს ტრანზისტორები წარმოუდგენლად პატარა - 5 ნანომეტრამდე, ან დნმ-ის ორი ჯაჭვის ზომის. ასე მუშაობენ თანამედროვე პროცესორები და მათაც კი შეიძლება შეექმნათ პრობლემები ჩართვისა და გამორთვის მდგომარეობების გარჩევისას (თუმცა ეს გამოწვეულია მათი არარეალური მოლეკულური ზომის გამო. კვანტური მექანიკის უცნაურობა).

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

ასე რომ, თქვენ შეიძლება იფიქროთ: „რატომ მხოლოდ 0 და 1? რატომ არ დაამატე სხვა ნომერი? მიუხედავად იმისა, რომ ეს ნაწილობრივ განპირობებულია კომპიუტერების შექმნის ტრადიციებით, ამავდროულად, სხვა ციფრის დამატება ნიშნავს დენის სხვა მდგომარეობის განსხვავების აუცილებლობას და არა მხოლოდ „გამორთული“ ან „ჩართული“.

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

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

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

ბინარული ჭეშმარიტების ცხრილს, რომელიც მუშაობს ორობით ლოგიკაზე, ექნება ოთხი შესაძლო გამოსავალი თითოეული ფუნდამენტური ოპერაციისთვის. მაგრამ, რადგან სამმაგი კარიბჭე იყენებს სამ შეყვანას, სამმაგი სიმართლის ცხრილს ექნება 9 ან მეტი. მიუხედავად იმისა, რომ ორობით სისტემას აქვს 16 შესაძლო ოპერატორი (2^2^2), სამეულ სისტემას ექნება 19683 (3^3^3). სკალირება ხდება პრობლემად, რადგან, მიუხედავად იმისა, რომ სამება უფრო ეფექტურია, ის ასევე ექსპონენტურად უფრო რთულია.

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



 

შეიძლება სასარგებლო იყოს წაკითხვა: