Mašīnas valoda ir zema līmeņa valoda, kas sastāv no bināriem skaitļiem vai bitiem, ko var saprast dators. To sauc arī par mašīnkodu vai objekta kodu, un to ir ļoti grūti saprast. Vienīgā valoda, ko dators saprot, ir mašīnvaloda. Visas programmas un programmēšanas valodas, piemēram, Swift un C++, veido vai palaiž programmas mašīnvalodā, pirms tās tiek darbinātas datorā. Kad tiek izpildīts konkrēts uzdevums, pat vismazākais process, mašīnas valoda tiek pārsūtīta uz sistēmas procesoru. Datori spēj saprast tikai bināros datus, jo tie ir digitālās ierīces.
Datorā visi dati, piemēram, video, programmas, attēli tiek attēloti bināros formātos. CPU apstrādā šo mašīnas kodu vai bināros datus kā ievadi. Pēc tam lietojumprogramma vai operētājsistēma iegūst iegūto izvadi no CPU un parāda to vizuāli. Piemēram, ASCII kods 01000001 apzīmē burtu “A” mašīnvalodā, tomēr tas tiek parādīts ekrānā kā “A”.
Dažādu mašīnkodu izmanto dažādas procesoru arhitektūras; tomēr mašīnas kods ietver 1 un 0. Gadījumā, salīdzinot ar Intel x86 procesoru, kas satur CISC arhitektūru, PowerPC procesoram ir nepieciešams cits kods, kas satur RISC arhitektūru. Pareizai procesora arhitektūrai, lai pareizi palaistu programmu, kompilatoram ir jākompilē augsta līmeņa pirmkods.
kurš ir Fredijs Merkūrijs
Programmai vai darbībai precīza mašīnas valoda var atšķirties atkarībā no operētājsistēmas, kas apraksta, kā kompilators ieraksta darbību mašīnvalodā. Tāpat fotoattēlā ir vairāk nekā desmitiem tūkstošu bināro datu, kas nosaka katra pikseļa krāsu.
Datorprogrammas tiek veidotas vienā vai vairākās programmēšanas valodās (piemēram, Java, C++ vai Visual Basic). Programmas kods ir jāapkopo, caur kuru dators to var saprast, jo datorprogrammu izveidei izmantotās programmēšanas valodas dators nevar saprast tieši. Kad programmas kods ir apkopots, tas tiek pārveidots par
01001000 01100101 01101100 01101100 01101111 00100000 01010111 01101111 01110010 01101100 01100100
mašīnvaloda, lai dators to saprastu.
cik daudz pilsētu ASV
Mašīnu valodas piemēri
Teksts ' Sveika pasaule ' būtu rakstīts mašīnvalodā:
Tālāk ir sniegts vēl viens mašīnas valodas piemērs, kas ekrānā parādīs burtu “A” 1000 reizes.
169 1 160 0 153 0 128 153 0 129 153 130 153 0 131 200 208 241 96
Mašīnkoda izpilde
Katra procesoru saime ievēro instrukciju kopu, kas ir īpaši ieprogrammēta, un šīs instrukcijas ir noteiktas ar mašīnas kodu. Visas mazākās darbināmās sastāvdaļas, sastāvdaļas, kas veido mašīnas vispārējo darbību, nosaka īpašs pamatvienību izvietojums. Visas informācijas pamatvienības ir attēlotas binārā formātā, kurai ir viena vai divas vērtības “1” vai “0”. Tā kā katrai procesora klasei ir nepieciešama strukturāla konfigurācija, kas atbilst tās unikālajai instrukciju kopai, visas mašīnkoda konfigurācijas pamatinstrukciju kopas ir saistītas ar līdzīgi saskaņotām procesoru klasēm.
abstrakcija java
Mašīnvalodas lietojumi
Mašīnvalodas biežākie lietojumi ir apskatīti tālāk:
- Mašīnu valoda ir zema līmeņa valoda, ko mašīnas saprot, bet ko cilvēki var atšifrēt, izmantojot montētāju.
- Kompilatoram ir svarīga loma starp cilvēkiem un datoriem, jo tas pārvērš mašīnu valodu citā kodā vai valodā, kas ir saprotama cilvēkiem.
- Montāžas valoda ir paredzēta mašīnvalodas izpratnei, jo tā ir tās izvilkšana.
Atšķirība starp mašīnas valodu un montāžas valodu
Pastāv dažādas atšķirības starp mašīnas valodu un montāžas valodu. Tālāk ir sniegta tabula, kurā ir visas atšķirības starp tām.
Mašīnas valoda | Asamblejas valoda |
---|---|
Mašīnu valoda ir zema līmeņa programmēšanas valoda, kas izgatavota no bināriem skaitļiem vai bitiem, kurus var lasīt tikai mašīnas. To sauc arī par mašīnas kodu vai objekta kodu, kurā instrukcijas izpilda tieši centrālais procesors. | Montāžas valoda ir valoda, kas paredzēta tikai cilvēkiem, ko datori nesaprot. Rezultātā tas darbojas kā saikne starp augsta līmeņa programmēšanas valodām un mašīnvalodām, kas prasa montētāja izmantošanu, lai pārveidotu instrukcijas mašīnas vai objekta kodā. |
Mašīnvaloda ietver bināros ciparus (0 un 1), heksadecimālo un oktālo decimāldaļu, ko var uztvert tikai datori un tos nevar atšifrēt cilvēki. | Mnemonika, piemēram, Mov, Add, Sub, End un citi, veido montāžas valodu, ko cilvēki var saprast, izmantot un lietot. |
Mašīnvalodā kļūdu labošanu un modifikācijas nevar veikt, un mašīnvalodu funkcijas tiek attiecīgi mainītas. | Assembly valodai ir parastās instrukciju kopas, kā arī iespēja labot kļūdas un modificēt programmas. |
Mašīnu valodas ir atkarīgas no platformas, un tās cilvēkiem ir ļoti grūti saprast. | Assembly valodu sintakses ir līdzīgas angļu valodai; tāpēc cilvēkam to ir viegli saprast. |
Mašīnas valodu nav iespējams iemācīties, jo to ir grūti iegaumēt un tā kalpo tikai kā mašīnkods. | Montāžas valodu ir viegli iegaumēt, un to izmanto uz mikroprocesoriem balstītām lietojumprogrammām/ierīcēm un reāllaika sistēmām. |
Mašīnvalodā visi dati ir binārā formātā, kas padara to izpildi ātru. | Salīdzinot ar mašīnvalodu, montāžas valodas izpildes ātrums ir lēns. |
Mašīnas valoda izmanto bitu secības, lai dotu komandas. Nulle apzīmē izslēgto vai nepareizo stāvokli, bet viens apzīmē ieslēgtu vai patieso stāvokli. Tas ir atkarīgs no CPU, lai augsta līmeņa programmēšanas valodu pārveidotu par mašīnvalodu. | Tā vietā, lai izmantotu neapstrādātas bitu sekvences, montāžas valoda izmanto “mnemonikas” nosaukumus un simbolus; tādēļ lietotājiem nav jāatceras operāciju kodi ar montāžas valodu. Montāžas valodās cilvēki var saistīt kodu ar mašīnkodu, un kodi ir nedaudz lasāmāki |
Pirmās paaudzes programmēšanas valodas ir mašīnu valodas, kurām nav nepieciešams tulks. | Otrās paaudzes programmēšanas valodas ir montāžas valodas, kas izmanto assembler kā tulkotāju, lai pārveidotu mnemoniku mašīn saprotamā formā. |
Iekārtas valoda ir atkarīga no aparatūras un neļauj veikt izmaiņas. | Montāžas valoda nav pārnēsājama, un tā ir atkarīga no mašīnas, un to var viegli mainīt. |
Mašīnvalodas sintaksē ir lielāka kļūdu iespējamība. | Salīdzinot ar mašīnvalodu, montāžas valodā ir mazāk sintakses kļūdu iespējamības. |