Gibas11
(Kamil Kocurek)
27 Październik 2013 16:37
#1
Witam, Napisałem w asm program pobierający imię od usera i wyświetlający przywitanie. Problem w tym że zamiast wyświetlić “Siema [WPROWADZONE IMIĘ].” wyświetla
“. ema [WPROWADZONE IMIĘ]”. Wie ktoś co zrobić by kropka była na końcu zdania? Oto kod:
org 100h; Program .com ; Stałe %define endv “$” %define endl 13, 10 %define endlav 13, 10, “$” ; Dane naszego programu section .data logo db “Siema”, endl, ‘$’ kropka db “. $” entername db "Podaj swoje imie: ", endv name db 15 db 0 times 15 db ‘$’ hello db endl,"Siema ", endv ; Kod programu section .text global _start _start: ; Czyszczenie konsoli mov ax,3 int 10h ; Wyświetlamy proźbę o imię mov ah, 9 mov dx, entername int 21h ; Pobieramy imię mov ah, 0Ah mov dx, name int 21h ; Wywietlamy powitanie i imię usera mov ah, 9 mov dx, hello int 21h mov ah, 9 mov dx, name+2 int 21h mov ah, 9 mov dx, kropka int 21h ; Oczekujemy na klawisz mov AH,10H int 16H ; Czyszczenie konsoli mov ax,3 int 10h ;wychodzimy z programu mov ax, 4C00h int 21h
Gibas11 , proszę zapoznaj się z tą stroną oraz tym tematem , a następnie, używając przycisku
_alex
([alex])
28 Październik 2013 00:16
#3
Po wprowadzonym imieniu wstaw znak $