Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

cR@zY

capicua assembler emu8086

Mensagens Recomendadas

cR@zY

boas pessoal tenho que resolver uma especie de capicua em assembler para concluir um dos modulos do meu curso, se me pudessem dar um ajudinha o que o professor quer é mais o menos isto

1 – Deverá o primeiro programa no início indicar a

quantidade de capicuas a tratar, ou seja, os “10” primeiros números

que podem ser lidos da direita para a esquerda e da esquerda para a

direita de forma inequívoca, sendo os números seguidamente

apresentados de forma diferenciada, linha a linha, após esta primeira

apresentação. Finalmente, indicar uma frase final para que o

utilizador pressione numa tecla para sair do programa e, assim,

realmente acontecer quando o utilizador desse modo proceder.

NOTA: Este programa deve conter todo o código a ser utilizado

sequencialmente, mesmo que implique repetição de

utilização de partes do mesmo. Ou seja, não se deve

utilizar os procedimentos. Tão pouco a utilização de

código para limpar no ecrã.

eu consegui arranjar isto mas não está a funcionar.

org 0x100

mov ax,0x0003

int 0x10

mov ax,0x0900

mov dx,txt

int 0x21

leitura:

xor ax,ax 

int 0x16

cmp al,27

je sair

cmp al,13

je executa

xor bx,bx

mov cx,ax

mov ah,0x0E

int 0x10

sub cx,48

push cx

mov [num+bx],cx

inc bx

mov cx,bx

jmp leitura

executa:

xor bx,bx

.execucao:

  xor ax,ax

  pop ax

  mov [num2+bx],al

  mov di,cx

  mov ax,[num+di]

  mov dx,[num2+bx]

  cmp dx,ax

  jne n

  inc bx

  dec cx

  test cx,cx

  jnz .execucao

  mov dx,txt3

  jmp fim

n:

mov dx,txt2

fim:

mov ax,0x0900

int 0x21

sair:

mov dx,txt4

int 0x21

int 0x20

num times 41 db 0

num2 times 41 db 0

txt db ' Digite um numero para ver se e uma capicua: $'

txt2 db 13,10,'nao e capicua$'

txt3 db 13,10,'e capicua$'

Se puderem dar uma ajudinha agradeço.

Obrigado

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.