ბინარული კოდის გაშიფვრა ონლაინ. ორობითი კოდი
ორობითი კოდი წარმოადგენს ტექსტს, კომპიუტერული პროცესორის ინსტრუქციებს ან სხვა მონაცემებს ნებისმიერი ორსიმბოლო სისტემის გამოყენებით. ყველაზე ხშირად, ეს არის 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 | 0С | ♀ | 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). მისი პირველი პუნქტი იწერება ამ განყოფილებაში. შემდეგი ფორმატი გამოიყენება მეხსიერების ნაგავსაყრელში ინფორმაციის საჩვენებლად:
- პირველი სვეტი შეიცავს ხაზის პირველი ბაიტის ორობით მისამართს
- შემდეგი თექვსმეტი სვეტი შეიცავს ტექსტურ ფაილში მოცემულ ბაიტებს. ბაიტის ნომრის უფრო მოსახერხებლად დასადგენად, მერვე სვეტის შემდეგ დგება ვერტიკალური ხაზი. ბაიტები, მოკლედ, წარმოდგენილია თექვსმეტობით კოდში.
- ბოლო სვეტში ეს იგივე ბაიტები წარმოდგენილია როგორც გამოსახული ანბანური სიმბოლოები
ზემოთ მოყვანილ მაგალითში ხედავთ, რომ ტექსტის პირველი ხაზი 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 |
ცხრილის სტანდარტული ნაწილი (ინგლისური). ეს მოიცავს ლათინური ანბანის მცირე და დიდ ასოებს, ათობითი რიცხვებს, პუნქტუაციის ნიშნებს, ყველა სახის ფრჩხილს, კომერციულ და სხვა სიმბოლოებს. |
128 - 255 |
10000000 - 11111111 |
მაგიდის ალტერნატიული ნაწილი (რუსული). |
ASCII კოდების ცხრილის პირველი ნახევარი
![]() |
გთხოვთ გაითვალისწინოთ, რომ კოდირების ცხრილში ასოები (დიდი და პატარა) დალაგებულია ანბანური თანმიმდევრობით, ხოლო რიცხვები დალაგებულია ზრდის მიხედვით. სიმბოლოების განლაგებისას ლექსიკოგრაფიული წესრიგის ამ დაცვას ანბანის თანმიმდევრული კოდირების პრინციპი ეწოდება.
რუსული ანბანის ასოებისთვის ასევე დაცულია თანმიმდევრული კოდირების პრინციპი.
ASCII კოდების ცხრილის მეორე ნახევარი
![](https://i2.wp.com/school497.ru/download/u/02/img/asc1.gif)
სამწუხაროდ, ამჟამად არსებობს ხუთი განსხვავებული კირილიცის კოდირება (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). სკალირება ხდება პრობლემად, რადგან, მიუხედავად იმისა, რომ სამება უფრო ეფექტურია, ის ასევე ექსპონენტურად უფრო რთულია.
Ვინ იცის?სამომავლოდ შეიძლება დავინახოთ სამეული კომპიუტერები, რადგან ბინარული ლოგიკა აწყდება მინიატურიზაციის გამოწვევებს. ამ დროისთვის, მსოფლიო გააგრძელებს ორობით რეჟიმში მუშაობას.
შეიძლება სასარგებლო იყოს წაკითხვა:
- ქსელის მარშრუტის მიკვლევა (tracert ბრძანება);
- Total Commander უფასო ჩამოტვირთვა რუსული ვერსია;
- როგორ გადავიტანოთ ფაილები C დისკიდან D დისკზე?;
- როგორ დავყოთ რეიტინგის ვარსკვლავები;
- პირადი ანგარიში Nizhny Novgorodenergogazraschet;
- როგორ გადავიტანოთ გაზის მრიცხველის ჩვენებები;
- ბინარული კოდის გაშიფვრა ონლაინ;
- სანიშნეების აღდგენა Mozilla Firefox Speed აკრიფეთ, სადაც პარამეტრები ინახება;