Sie sind auf Seite 1von 2

Nome: Rayane Gadelha Melo de Lima

Nmero de Matricula: 368610


Engenharia Eltrica

1. Explicar o que uma STRING e comentar sobre a importncia de


se ter instrues especficas para manipular tais dados.

String uma matriz de bytes ou uma palavra. As operaes que podem ser
executadas com instrues so copiar uma string em outra string, procurar uma string
para um byte ou palavra em particular, armazenar caracteres em uma string e comparar
cadeias de caracteres alfanumrica.
A importncia dessas ferramentas a facilitao na manipulao de dados em
ASCII, com a alterao incluso/excluso de elementos ou pela da substituio de seus
elementos por outros elementos, formando uma nova matriz de byte ou palavras.

2. Descrever cada uma das seguintes instrues: MOVSB, MOVSW,


LODSB, LODSW, STOSB, STOSW, REP STD, CLD

MOVSB - copia contedos de BYTE dada pelo DS: SI em ES: DI


MOVSW - copia contedo da palavra dada por DS: SI em ES: DI
STOSB - copia contedos de AL para o endereo BYTE dada pelo
ES: DI. DI incrementado / decrementado por 1.
STOSW - copia o contedo do AX para o endereo PALAVRA dada
pelo ES: DI. DI incrementado / decrementado por 2.
STOSD - copia contedo de EAX para o endereo de palavra dupla
dada pelo ES: DI. DI incrementado / decrementado por 4.
LODSB - move o byte de DS endereo: SI em AL. SI incrementado
/ decrementado por 1.
LODSW - move a palavra da DS endereo: SI em AX. SI
incrementado / decrementado por 2.
LODSD - move a palavra dupla na DS endereo: SI em EAX. SI
incrementado / decrementado por 4.
CLD - limpa o DF; DF = 0 define
STD - define DF = 1.
REP MOVSB; copia 5 caracteres.
3. Escrever 04 exemplos* de programas (comentados), cada um
demonstrando o uso de um dos seguintes conjuntos de
instrues**:
a) (MOVSB, REP, CLD)
MOV AX, os dados @
MOV DS, ax; inicializar ds
MOV ES, ax; e es
LEA SI, EXPR1 + 10; final da string
LEA DI, CARACTER2 + 6; final da string
CLD; conjunto df = 0 (o processamento da esquerda para a direita)
MOV CX, 7; copiar 7 caracteres em string1
REP MOVSB; copiar 7 caracteres
b) (MOVSW, REP, STD)

MOV AX, os dados @


MOV DS, ax; inicializar ds
MOV ES, ax; e es
LEA SI, EXPR1 + 10; final da string
LEA DI, CARACTER2 + 9; final da string
SDT; conjunto df = 1 (o processamento da direita para a esquerda)
MOV CX, 10; copiar 10 caracteres em string1
REP MOVSW; copia contedo da palavra dada.

c) (LODSB, REP, CLD)


MOV AX, @DATA
MOV DS, AX ; inicializar ds
LEA SI, EXPR1; fonte
CLD; conjunto df = 0 (o processamento da esquerda para a direita)

REP LODSB

d) (STOSB, REP, CLD)


.DADOS
EXPR1 DB 'ABCD1234'

.CDIGO
MOV AX, @DATA
MOV AX, ES; inicializar ES

CLD; da esquerda para direita


LEA DI, EXPR1
MOV AL, '2'; personagem alvo

REPE SCASB; repete uma instruo de cadeia at ZF = 0 ou cx = 0

Das könnte Ihnen auch gefallen