Rutina na výpis čísla – Assembler – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Rutina na výpis čísla – Assembler – Fórum – Programujte.comRutina na výpis čísla – Assembler – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené.
Sefiros0
Návštěvník
8. 11. 2013   #1
-
0
-

Nazdar,
zase mám problém ... vytvořil jsem si funkci na výpis čísla (celého). Bohužel, někde sem v ní udělal chybu neb obvykle vypisuje kraviny (místo 950 třeba 900 a tak). Kontroloval jsem ji několikrát ale chybu sem v ní nenašel ... 

.macro printDigit dig
push ax
mov al , \dig
mov ah , 0xe
add al , 0x30
int 0x10
pop ax
.endm

.macro printNumber num
push ax
mov ax , \num
call __printNumber
pop ax
.endm

.globl __printNumber
__printNumber:
push bx
mov bx , 10
div bx

cmp al , 9
jle p0
jmp p1
p0:
printDigit al
jmp p2
p1:
push ax
movzx ax , al
call __printNumber
pop ax
p2:

cmp ah , 9
jle p3
jmp p4
p3:
printDigit ah
jmp p5
p4:
push ax
movzx ax , ah
call __printNumber
pop ax
p5:

pop bx
ret 

Budu rád za případné rady.

Nahlásit jako SPAM
IP: 80.188.252.–
Sefiros0
Návštěvník
8. 11. 2013   #2
-
0
-

Jo, už vím, zas sem rychlejc psal než myslel. Výsledek je v ax a zbytek v dx, nikoli v al a ah...

Nahlásit jako SPAM
IP: 80.188.252.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 154 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý