| Hjem | Hardware | Nettverk | Programmering | Software | Feilsøking | Systems | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringsspråk
  • Delphi Programming
  • Java Programming
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl Programming
  • Python Programming
  • Ruby Programming
  • Visual Basics Programming
  •  
    Datamaskin >> Programmering >> Computer Programmeringsspråk >> Content
    Skriv et monteringsspråkprogram for å multiplisere 8-bits signert nummer med et nummer?
    `` Assembly

    .modell liten

    .stack 100h

    .data

    num1 db -12; Første 8-bits signerte nummer

    num2 db 5; Andre nummer for å multiplisere med

    Resultat DW?; Resultat av multiplikasjon (16-bit)

    .kode

    Hoved Proc

    Mov Ax, @data; Initialiser datasegmentregisteret

    Mov ds, øks

    MOV AL, NUM1; Last inn første nummer i AL -registeret

    MOV BL, NUM2; Last andre nummer i BL -register

    IMUL BL; Multipliser Al med BL (resulter i AX)

    MOV Resultat, AX; Lagre resultatet i "resultat" -variabelen

    ; Vis resultatet (valgfritt)

    ; ...

    Mov Ah, 4ch; EXIT -programmet

    int 21h

    hovedendp

    slutt hoved

    `` `

    Forklaring:

    1. Initialisering:

    - `.modell Small` definerer minnemodellen (liten modell) og setter opp programstrukturen.

    - `.stack 100h` reserver 100h byte for bunken.

    - `.data` -seksjonen erklærer variabler:` num1`, `num2` og` resultat`.

    2. Last inn tallene:

    - `mov al, num1` laster det første tallet inn i` al`-registeret, som brukes til 8-biters operasjoner.

    - `MOV BL, NUM2` laster det andre nummeret inn i` Bl` -registeret.

    3. Multiplikasjon:

    - `Imul Bl` utfører den signerte multiplikasjonen av` al` av` bl`. Resultatet vil bli lagret i `Axe '-registeret (16-bit).

    4. Lagring av resultatet:

    - `MOV-resultatet, lagrer Axe '16-bits resultatet fra` Axe' inn i `resultatet`-variabelen.

    5. Valgfritt visning:

    - Du kan legge til kode for å vise resultatet ved å bruke `int 21h` med de aktuelle funksjonskodene. Dette kodebiten fokuserer på selve multiplikasjonen.

    6. Avslutt programmet:

    - `Mov Ah, 4ch` angir` ah` -registeret til DOS -funksjonskoden for å forlate programmet.

    - `INT 21H` Ringer DOS -avbrudd for å utføre utgangsfunksjonen.

    Viktige merknader:

    -Dette programmet bruker signert 8-biters multiplikasjon, noe som betyr at resultatet kan være en 16-bits signert verdi. Imul` -instruksjonen håndterer skiltforlengelse automatisk.

    - Resultatet`-variabelen er erklært som et ord (`dw`) for å holde 16-bits resultatet.

    - Du kan endre `num1` og` num2` for å endre tallene du vil multiplisere.

    - Monteringskoden må settes sammen ved hjelp av en samler som MASM eller TASM og deretter kobles for å lage en kjørbar fil.

    früher :

     Weiter:
      Relatert Artike
    ·Hvorfor ligner informasjonsbehandling på dataprogramme…
    ·Hvordan Lukk en Orphan Window Etter en Record er satt i…
    ·Forklaring av bruk av et Array 
    ·Slik utfører MSA på teststativer 
    ·Hvordan programmere et bingospill 
    ·Hvor å Endre Bullet stil ved hjelp av HTML programmeri…
    ·Hva er SQL Syntaksfremheving 
    ·Kan COBOL Vise en Hex verdi 
    ·Hvordan skrive Programmering Kode som kan hindre MS Acc…
    ·Hvordan Design Logic for et flytskjema som skriver Numb…
      Anbefalte artikler
    ·Slik installerer ASP.NET 
    ·Hvordan skrive Adsense annonser for Google 
    ·Prosentvis funksjon i PHP 
    ·Hvordan lage en Java Fil 
    ·Slik konverterer et tall i String i JavaScript 
    ·Hvordan få Web Apps med Visual Basic 2010 
    ·Hvordan lage en kul Loading Bar i Visual Basic 
    ·Hvordan lage en Shoutbox Med PHP og SQL 
    ·File Unntak for Java Applets : Arial.ttf vil ikke start…
    ·Hvordan å kalle en funksjon i VBA 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/