Maskinspråk är ett lågnivåspråk som består av binära tal eller bitar som en dator kan förstå. Den är också känd som maskinkod eller objektkod och är extremt svår att förstå. Det enda språk som datorn förstår är maskinspråk. Alla program och programmeringsspråk, som Swift och C++, producerar eller kör program på maskinspråk innan de körs på en dator. När en specifik uppgift, även den minsta processen utförs, transporteras maskinspråket till systemprocessorn. Datorer kan bara förstå binära data eftersom de är digitala enheter.
I datorn representeras all data som videor, program, bilder i binärt. CPU:n bearbetar denna maskinkod eller binära data som indata. Sedan får en applikation eller ett operativsystem det resulterande resultatet från CPU:n och visar det visuellt. Till exempel representerar ASCII-koden 01000001 bokstaven 'A' i maskinspråk, men den visas på skärmen som 'A'.
Olika maskinkoder används av olika processorarkitekturer; dock inkluderar maskinkoden 1:or och 0:or. För fall, jämfört med Intel x86-processor som innehåller en CISC-arkitektur, behöver en PowerPC-processor annan kod, som innehåller en RISC-arkitektur. För att få rätt processorarkitektur, för att köra ett program korrekt, måste en kompilator kompilera källkod på hög nivå.
För ett program eller en åtgärd kan det exakta maskinspråket skilja sig från operativsystemet, vilket beskriver hur en kompilator skriver en åtgärd till maskinspråket. På samma sätt har ett fotografi över tiotusentals binära data som bestämmer färgen på varje pixel.
Datorprogram skapas i ett eller flera programmeringsspråk (till exempel Java, C++ eller Visual Basic). Programkoden måste kompileras genom att datorn kan förstå den, eftersom programmeringsspråk som används för att skapa datorprogram inte kan förstås av datorn direkt. När programmets kod kompileras omvandlas den till
01001000 01100101 01101100 01101100 01101111 00100000 01010111 01101111 01110010 01101100 01100100
maskinspråk, så att datorn kan förstå det.
Exempel på maskinspråk
Texten ' Hej världen ' skulle skrivas på maskinspråket:
Ett annat exempel på maskinspråk ges nedan, som kommer att visa bokstaven 'A' 1000 gånger på skärmen.
169 1 160 0 153 0 128 153 0 129 153 130 153 0 131 200 208 241 96
Utförande av maskinkod
Varje processorfamilj följer en uppsättning instruktioner som är specifikt programmerade, och dessa instruktioner är utformade med maskinkod. Alla mindre åtgärdsbara komponenter, de komponenter som utgör maskinens övergripande funktion, bestäms av ett speciellt arrangemang av basenheter. Alla grundläggande informationsenheter representeras i binärt, som har ett eller två värden på '1' eller '0'. Eftersom varje processorklass kräver en strukturell konfiguration som passar dess unika instruktionsuppsättning, är alla maskinkodkonfigurationers grundläggande instruktionsuppsättningar länkade till liknande matchade processorklasser.
Användning av maskinspråk
Vanliga användningar av maskinspråk diskuteras nedan:
- Maskinspråk är ett lågnivåspråk som maskiner förstår men som människor kan dechiffrera med hjälp av en assembler.
- En kompilator spelar en viktig roll mellan människor och datorer eftersom den konverterar maskinspråk till annan kod eller språk som är förståeligt för människor.
- Assembly språk är dedikerat till att förstå maskinspråk eftersom det är en rip-off av det.
Skillnaden mellan maskinspråk och monteringsspråk
Det finns olika skillnader mellan maskinspråk och monteringsspråk. Nedan ges en tabell som innehåller alla skillnader mellan dem.
Maskinspråk | Assembleringsspråk |
---|---|
Maskinspråk är ett programmeringsspråk på låg nivå som består av binära tal eller bitar som bara kan läsas av maskiner. Det är också känt som maskinkod eller objektkod, där instruktioner exekveras direkt av CPU:n. | Assembly language är ett språk endast för människor som inte förstås av datorer. Som ett resultat fungerar det som en länk mellan högnivåprogrammeringsspråk och maskinspråk, vilket kräver användning av en assembler för att konvertera instruktioner till maskin- eller objektkod. |
Maskinspråk inkluderar binära siffror (0:or och 1:or), hexadecimala och oktala decimaler, som bara kan förstås av datorer och inte kan dechiffreras av människor. | Mnemonics som Mov, Add, Sub, End och andra utgör assemblerspråket, som människor kan förstå, använda och tillämpa. |
I maskinspråk kan felkorrigering och ändringar inte göras, och maskinspråkens funktioner varieras därefter. | Assembly-språket har konventionella instruktionsuppsättningar, såväl som förmågan att korrigera fel och modifiera program. |
Maskinspråk är plattformsberoende och mycket svåra att förstå för människor. | Syntaxerna för Assembly-språk liknar det engelska språket; därför är det lätt att förstå för en människa. |
Maskinspråk är inte möjligt att lära sig då det är svårt att memorera och fungerar endast som en maskinkod. | Assembly-språket är lätt att memorera, och det används för mikroprocessorbaserade applikationer/enheter och realtidssystem. |
I maskinspråk finns all data i binärt format som gör den snabb i exekvering. | Jämfört med maskinspråk är exekveringshastigheten för assemblerspråk långsam. |
Sekvenserna av bitar används av maskinspråket för att ge kommandon. Noll representerar av eller falskt tillstånd, medan ett representerar till eller sant tillstånd. Det är beroende av CPU:n för att konvertera högnivåprogrammeringsspråk till maskinspråk. | Istället för att använda råa sekvenser av bitar, använder assemblerspråk 'mnemonics' namn och symboler; därför behöver användare inte komma ihåg op-koder med assemblerspråk. På assemblerspråk kan människor mappa koden till maskinkod, och koderna är något mer läsbara |
Den första generationens programmeringsspråk är maskinspråk, som inte behöver en översättare. | Den andra generationen av programmeringsspråk är assemblerspråk, som använder assembler som översättare för att konvertera minnesminnen till maskinbegriplig form. |
Maskinspråk är hårdvaruberoende och tillåter inte modifiering. | Assembly språk är inte bärbart, och det är maskinberoende och kan enkelt ändras. |
I syntaxen för maskinspråk finns det fler chanser för fel. | Jämfört med maskinspråk finns det färre chanser för syntaxfel i assemblerspråk. |