Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [assembler] piccolo problema

    ho un problema:


    .data
    Num1 DW 0
    .code
    ...........
    ...........
    mov ah,01h
    mov si,0
    Leggi_1: int 21h ;leggo un carattere
    cmp al,0Dh ;Enter ?
    je Fine_1
    sub al,30h
    mov BYTE PTR Num1[si],al ;lo metto in Num1
    inc si
    jmp Leggi_1
    Fine_1:
    ..........
    ..........
    In pratica legge un carattere alla volta(fino a quando non premo invio) li toglie la componente ascii e lo mette in Num1 solo che Num1 e una variabile semplice infatti è proprio qui che non capisco questa furbata di usare Num1 come se fosse un "vettore".
    Potete spiegarmi cosa fa esattamente "mov BYTE PTR Num1[si],al"
    Non esistono tecniche per acquisire direttamente un intero?

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    4
    tu acquisici una stringa... mai un intero,,, e te lo devi convertire

    scusa.. ma...

    Num1 DW 0

    se lo consideri "array" ha solo 1 posizione allocata... e poi se fai incrementare SI... dove vanno a finire i dati?

    dovrebbe essere
    Num1 DW <<numero>> dup (0)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.