dal 2015 - visita n. 897
Esercizi
Esercizi

 

COPYBLK1.ASM

;::::::::: 8086 - ESERCIZI SVOLTI - RstSv/001 ::::::::::::::::::::::::::::::::
;:                                                                          ::
;: COPYBLK1.ASM - 12/02/2002                                                ::
;:                                                                          ::
;: Copia un blocco di Byte dall'indirizzo IndSorg all'indirizzo DestSorg.   ::
;: Sono dati: IndSorg = Indirizzo Iniziale Sorgente                         ::
;:            IndDest = Indirizzo Iniziale Destinazione                     ::
;:            NumByte = Numero Totale dei byte                              ::
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

                                      ; SEZIONE PROLOGO o INTESTAZIONE
CodeSeg   SEGMENT
          ASSUME  CS:CodeSeg, DS:CodeSeg
          ORG     100H

                                      ; SEZIONE DICHIARATIVE
IndSorg   EQU     2000h               ; Assegnazione Nomi delle Variabili
IndDest   EQU     3000h
NumByte   EQU      800h

                                      ; 1) FASE DI INIZIALIZZAZIONE
Start:    MOV     SI,IndSorg          ; SI Punta Primo Byte Area Sorgente
          MOV     DI,IndDest          ; DI Punta Primo Byte Area Destinazione
          MOV     CX,NumByte          ; CX Conta il Totale dei Cicli di Lavoro

                                      ; 2) FASE DI ESECUZIONE
Work:     MOV     AL,[SI]             ; Lettura Byte dalla Memoria in AL
          MOV     [DI],AL             ; Scrittura Byte da AL nella Memoria

                                      ; 3) FASE DI CONTROLLO
          INC     SI                  ; Punta al byte Sorgente Successivo
          INC     DI                  ; Punta al byte Destinazione Successivo
          DEC     CX                  ; Decrementa il Totale Cicli di Lavoro
          JNZ     Work                ; CX=0 ?    NO: Riesegui da Work
                                      ;           SI: Esegui la prossima istruzione

                                      ; 4) FASE DI USCITA
          MOV     AH,4Ch              ; Predisponi il servizio DOS 4Ch
          INT     21h                 ; Esecuzione servizio DOS

                                      ; SEZIONE EPILOGO o CHIUSURA
CodeSeg   ENDS
          END     Start               ; Rinvio all'Istruzione di Start


Asm86
COPYBLK1
COPYBLK2
DISPMSG1
DISPMSG2
DISPMSG3
FILLBLK1
FILLBLK2
WAITKBD1
SOMDIF1
PASSWRD1
CLRSCR1
SCACCHI1
SCACCHI2
SCACCHI3
SCACCHI4
ALLCHAR1
ATTRIB1
CLRSCR2
TESTOCOM
ORDIN1
Funzioni Stringa
Tastiera DOS



È più facile vedere un amore estremo che un'amicizia perfetta.
La Bruyère

Valid CSS!
pagina generata in 0.001 secondi