ძირითადი განსხვავება – მანქანა ენა და ასამბლეის ენა
პროგრამირების ენები საშუალებას აძლევს ადამიანებს შექმნან ინსტრუქციები კომპიუტერისთვის დავალებების შესასრულებლად. არსებობს პროგრამირების ენების სამი კატეგორია, როგორიცაა მაღალი დონის პროგრამირების ენები, ასამბლეის ენა და მანქანა ენა. მაღალი დონის პროგრამირების ენები უფრო ადვილი გასაგებია ადამიანებისთვის. კომპიუტერის მიერ აღიარებული ენა ცნობილია როგორც მანქანური ენა. ასამბლეის ენა არის ენა მაღალი დონის ენებსა და მანქანა ენას შორის. მთავარი განსხვავება მანქანურ ენასა და ასამბლეის ენას შორის არის ის, რომ მანქანა ენა ასრულებს პირდაპირ კომპიუტერს და ასამბლეის ენას სჭირდება ასამბლერის გადაყვანა მანქანის კოდში ან ობიექტის კოდში, რომ შეასრულოს CPU-ს მიერ.
რა არის მანქანა ენა?
ადამიანებს შეუძლიათ გაიგონ მაღალი დონის პროგრამირების ენები. არ არის აუცილებელი შიდა CPU-ს ღრმად გააზრება, მაღალი დონის ენების გამოყენებით დაპროგრამება. ისინი მიჰყვებიან ინგლისური ენის მსგავს სინტაქსს. Java, C, C++, Python არის რამდენიმე მაღალი დონის პროგრამირების ენა. კომპიუტერი ცნობს მანქანის ენას, მაგრამ არ ესმის მაღალი დონის ენები. ამიტომ, ეს პროგრამები უნდა გადაკეთდეს კომპიუტერის გასაგებ მანქანაზე. ეს თარგმანი შესრულებულია შემდგენელის ან თარჯიმნის გამოყენებით.
სურათი 01: ნულებისა და ერთების მანქანური ენა.
მანქანის ენა შედგება ბინარული ციფრებისგან, რომლებიც არის ნულები და ერთხელ. კომპიუტერი არის ციფრული ელექტრონული მოწყობილობა, ამიტომ იგი იყენებს ორობით ოპერაციებს. ერთი მიუთითებს ნამდვილ მდგომარეობაზე / ჩართულ მდგომარეობაზე, ხოლო ნული მიუთითებს ცრუ მდგომარეობაზე / გამორთვის მდგომარეობაზე. პროგრამის მაღალი დონის ენიდან მანქანურ ენაზე გადაყვანის გზა დამოკიდებულია CPU-ზე.
რა არის ასამბლეის ენა?
ასამბლეის ენა არის შუალედური ენა მაღალი დონის პროგრამირების ენებსა და მანქანა ენას შორის. ეს არის მანქანა ენაზე ერთი საფეხურით ზემოთ. ასამბლეის ენა უფრო ადვილი გასაგებია ვიდრე მანქანური ენა, მაგრამ უფრო რთული ვიდრე მაღალი დონის პროგრამირების ენები. ეს ენა ასევე ცნობილია როგორც დაბალი დონის ენა, რადგან ის ახლოსაა ტექნიკის დონესთან. ასამბლეის გამოყენებით ეფექტური პროგრამების დასაწერად, პროგრამისტს კარგად უნდა ესმოდეს კომპიუტერის არქიტექტურა და რეესტრის სტრუქტურა.სპეციალური შემდგენელი, რომელიც ცნობილია როგორც ასამბლერი, გამოიყენება ასამბლეის ენის ინსტრუქციების მანქანის კოდად ან ობიექტის კოდად გადასაყვანად.
ასამბლეის ენის განცხადებებს აქვს ოთხი სექცია. ისინი არიან იარლიყი, მნემონიკა, ოპერანდი, კომენტარი. ეტიკეტი და კომენტარები არჩევითია. Mnemonic არის შესრულების ინსტრუქცია და ოპერანდები ბრძანების პარამეტრები. ასამბლეის ენა ასევე მხარს უჭერს მაკროებს. მაკრო შეიძლება განისაზღვროს, როგორც სახელის მქონე ინსტრუქციების ნაკრები. მისი გამოყენება შესაძლებელია პროგრამის სხვაგან.
ასამბლეის ენის განცხადებების ზოგიერთი მაგალითი შემდეგია.
MOV SUM, 50 – ეს ინსტრუქცია აკოპირებს მნიშვნელობას 50 ცვლადში SUM.
ADD VALUE1, 20 – ეს არის VALUE1 ცვლადის 20 დამატება
ADD AH, BH – ეს ინსტრუქცია არის AH რეესტრის შინაარსის კოპირება BH რეესტრში.
INC COUNT – ეს არის COUNT ცვლადის ერთით გაზრდა.
AND VALUE1, 100 – ეს არის AND ოპერაციის შესრულება ცვლადებზე VALUE1 და 100.
MOV AL, 20 - ეს არის 20 მნიშვნელობის კოპირება AL რეესტრში
სურათი 02: პროგრამა დაწერილი ასამბლეის ენის გამოყენებით
ასამბლეის განცხადებების ნაკრები არის ასამბლეის პროგრამა. ჩანს, რომ ასამბლეის ენა უფრო ადვილია, ვიდრე მანქანური ენა. მას აქვს ინგლისური ენის მსგავსი სინტაქსი. ასამბლეის ენას აქვს დაახლოებით ოცდაათი ინსტრუქცია. საჭირო მეხსიერება და შესრულების დრო მინიმალურია მაღალი დონის ენებთან შედარებით.
რეალურ დროში სისტემებში შეიძლება იყოს მოვლენები, რომლებიც საჭიროებენ CPU-ს დაუყოვნებლივ მოქმედებას. ეს მოვლენები არის სპეციალური ქვეპროგრამები, რომელსაც ეწოდება შეწყვეტის სერვისის რუტინა (ISR). ასამბლეის ენა სასარგებლოა ISR პროგრამირებისთვის.
რა მსგავსებაა მანქანურ ენასა და ასამბლეის ენას შორის?
მანქანის ენაც და ასამბლეის ენაც დაკავშირებულია აპარატურის დონესთან
რა განსხვავებაა მანქანურ ენასა და ასამბლეის ენას შორის?
მანქანის ენა ასამბლეის ენის წინააღმდეგ |
|
მანქანის ენა არის ყველაზე დაბალი დონის პროგრამირების ენა, სადაც ინსტრუქციები შესრულებულია უშუალოდ CPU-ს მიერ. | ასამბლეის ენა არის დაბალი დონის პროგრამირების ენა, რომელიც მოითხოვს ასამბლერის გადაყვანას მანქანის კოდზე/ობიექტის კოდზე. |
გააზრება | |
მანქანის ენა გასაგებია მხოლოდ კომპიუტერებისთვის. | ასამბლეის ენა გასაგებია ადამიანებისთვის. |
სინტაქსი | |
მანქანის ენა შედგება ბინარული ციფრებისგან. | ასამბლეის ენა მიჰყვება ინგლისური ენის მსგავს სინტაქსს. |
დამოკიდებულება | |
მანქანის ენა განსხვავდება პლატფორმის მიხედვით. | ასამბლეის ენა შედგება ინსტრუქციების სტანდარტული ნაკრებისგან. |
აპლიკაციები | |
მანქანის ენა არის მანქანის კოდი. | ასამბლეის ენა გამოიყენება მიკროპროცესორზე დაფუძნებული, რეალურ დროში სისტემებისთვის. |
რეზიუმე – მანქანური ენა ასამბლეის ენის წინააღმდეგ
სხვაობა მანქანურ ენასა და ასამბლეის ენას შორის არის ის, რომ მანქანური ენა პირდაპირ შესრულებულია კომპიუტერის მიერ, ხოლო ასამბლეის ენა არის დაბალი დონის პროგრამირების ენა, რომელიც მოითხოვს ასამბლერს გადაიყვანოს ობიექტურ კოდში ან მანქანის კოდში.ასამბლეის ენა ერთი ნაბიჯით უსწრებს მანქანურ ენას. ასამბლეის ენა იდეალური ენაა მიკროკონტროლერებზე დაფუძნებული სისტემების დასაპროგრამებლად. ეს ენა ასევე იძლევა კარგად გაგებას, თუ როგორ მუშაობს CPU და კომპიუტერის შიდა კომპონენტები.
ჩამოტვირთეთ მანქანური ენის PDF ვერსია ასამბლეის ენის წინააღმდეგ
შეგიძლიათ ჩამოტვირთოთ ამ სტატიის PDF ვერსია და გამოიყენოთ იგი ოფლაინ მიზნებისთვის ციტირების შენიშვნის მიხედვით. გთხოვთ გადმოწეროთ PDF ვერსია აქ განსხვავება მანქანა ენასა და ასამბლეის ენას შორის
სურათი თავაზიანობა:
1.'მანქანის ენა'By Turkei89 – საკუთარი ნამუშევარი, (CC BY-SA 3.0) Commons Wikimedia-ის მეშვეობით
2.'Zstr count x86 ასამბლეა' OldCodger2, (საჯარო დომენი) Commons Wikimedia-ის მეშვეობით