Buscar

Questionario 18

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Questionário slide 18 
Jackson Felipe Magnabosco – Turma 2016 – Ciência da computação 
 
 Exercicio 1.1. 
Escreva uma instrução, usando operandos de 16 bit, que limpa os 8 bits superiores do 
registrador AX e que não altere os 8 bits inferiores. 
and ax, 0000000011111111b 
 
 Exercicio 1.2. 
Escreva uma instrução, usando operandos de 16bit, que seta os 8 bits superiores do 
registrador AX e que não altere os 8 bits inferiores Escreva. 
 or ax, 1111111100000000b 
 
 Exercicio 1.3. 
 Escreva uma instrução que reverte todos os bits em EAX (sem usar o operador NOT). 
 xor eax, 0FFFFFFFFh 
 
 Exercicio 1.4. 
Escreva uma instrução que converte um caracter uppercase em AL para lowercase, mas 
que não modifique AL se ele já possuir uma letra lowercase. 
or al, 00100000b 
 
 Exercicio 2. 
 Qual é o valor de BX depois da execução das seguintes instruções: 
 
1. mov bx, 0FFFFh 
 and bx, 6Bh. ;bx = 6Bh 
 
2. mov bx, 91BAh 
 and bx, 92h. ;bx = 93h 
 3. mov bx, 0649Bh 
 or bx, 3Ah. ;bx = 1Ah 
 
 4. mov bx, 029D6h 
 xor bx, 8181h. ;bx = 0A857h 
 
 Exercicio 3 
 Mostre o resultado de AL (em Binário) após a execução das instruções abaixo: 
 
1. mov al, 01101111b 
 and al, 00101101b. ;a = 00101101 
 
2. mov al, 6Dh 
 and al, 4Ah. ;b = 01001000 
 
3. mov al, 00001111b 
 or al, 61h. ;c = 01101111 
 
4. mov al, 94h 
 xor al, 37h. ;d = 10100011 
 
 Exercicio 4 
 Mostre o resultado de AL (em Hexadecimal) após a execução das instruções abaixo: 
 
1. mov al, 7Ah 
 not al. ;a = 85h 
 
2. mov al,3Dh 
 and al, 74h. ;b = 34h 
 
 3. mov al, 9Bh 
 or al, 35h. ;c = BFh 
 
 4. mov al, 72h 
 xor al, 0DCh. ;d = AEh 
 
 Exercicio 5 
 Qual será o valor final em EDX após a execução dos códigos abaixo? 
 
1. edx = 1 
2. edx = 1 
 
 Exercicio 6 
Escreva uma instrução que cria um desvio para uma label (L1) quando o valor unsigned 
integer armazenado em DX é menor ou igual ao inteiro armazenado em CX. 
 
 ​ cmp dx, cx 
 jbe L1 ; Jump if below or equal (if leftOP is lesser than/equal to rightOP) 
 
 Exercicio 7 
Escreva uma instrução que cria um desvio para uma label ( L2) quando o valor signed 
integer armazenado em AX é maior ou igual ao inteiro armazenado em CX. 
 
 cmp ax, cx 
 jge L2 ; Jump if greater than or equal to (if leftOP is greater than/equal to rightOP) 
 
 Exercicio 8 
Escreva uma instrução que converte um dígito ASCII em AL para o seu correspondente 
binário. Se AL já contém um valor binário (00h a 09h), não realize a conversão. 
 
 and al, 00001111b 
 
 Exercicio 9 
Implemente os códigos abaixo em linguagem Assembly.Obs: X é uma variável 32-bit. 
.data 
 X dword ? 
 val1 dword ? 
 
1. ; if (val1 > ecx) AND (ecx > edx) then 
; X = 1 ; 
else ; X = 2 
.code 
 cmp val1, ecx 
 jna L1 ; Jump if not above (same as JBE) 
 cmp ecx, edx 
 jna L1 
 mov X, 1 
 jmp next 
 L1: mov X, 2 
 
 2. ;if (ebx > ecx) OR (ebx > val1) then 
 ;X = 1 
 ;else 
 ;X = 2 
 .code 
 cmp ebx, ecx 
 ja L1 ; Jump if above (if leftOP > rightOP) 
 cmp ebx, val1 
 ja L1 
 mov X, 2 
 L1: mov X, 1 
 
 Exercicio 10 
Implemente os códigos abaixo em linguagem Assembly. Obs: A, B e N são variáveis 32 - 
bit (signed integers). 
 
 ; while N > 0 
 ; if N != 3 AND (N < A OR N > B) 
 ; N = N - 2 
 ; else 
 ; N = N - 1 
 ; end while 
 .data 
 A dword ? 
 B dword ? 
 N dword ? 
 .code 
 mov ecx, N 
 While: 
 cmp ecx, 0 
 je endwhile ; Jump if equal (leftOP = rightOP) 
 cmp ecx, 3 
 Jne Condition ; Jump if not equal (leftOP != rightOP) 
 dec ecx 
 jmp while ; Jump if not parity (PF = 0) 
 Condition​: 
 cmp ecx, A 
 jb True ; Jump if below (if leftOP < rightOP) 
 cmp ecx, B 
 ja True ; Jump if above (if leftOP > rightOP) 
 jmp False 
True: 
 sub ecx, 2 
 jmp while 
 False: 
 dec ecx 
 jmp while 
 endwhile: 
 nop 
 
 Exercicio 11 
 .data 
 Index DWORD 0 
 sum DWORD 0 
 sample DWORD 50 
 array DWORD 10, 60, 20, 33, 72, 89, 45, 65, 72,18 
 ArraySize = ($ - Array) / TYPE array 
 .code 
 mov eax , sum 
 mov edx , sample 
 mov esi , index 
 mov ecx , ArraySize 
 While: 
 cmp esi , ecx 
 jnl endwhile ; Jump if not less (same as JGE) 
 cmp array [esi] , edx 
 jng False ; Jump if not greater (same as JLE) 
 add eax , array [esi] 
 False: 
 add esi, 4 
 jmp while 
 Endwhile: 
 mov sum , eax 
 nop

Outros materiais