Ĺadny brzuch
Witam. Mam pytanie. Jaka funkcja w asemblerze odpowieda za zmiane typu Int (liczby) na typ String (ciąg znaków)? Byłbym bardzo wdzięczny.
Jęsli chodzi o czysty ASM to musisz sobie sam ją sprobnąć :lol:
Komuno wróć !
funkcja w asemblerze. :lol:
Cze Era. Jak co to Reqst'owi to potrzebne do os'a Spytaj sie jego o szczeguły ;D. Ja ino miałem mu pomóc ;p
Z tego co wiem w asemblerze używa siewywołań procesora a nie funkcji jest to programowanie na mnemonikach (tzw. rozkazach procwsora)
Nie wazne jak sie to nazywa. Tylko jak kurde rozwiazac ten problem.
ja w swojej gierce uzylem takiego kodu, gdzie draw_char to funkcja stawiająca znak:
draw_integer: ; AX - x, BX - y, CL - color, DX - integer
PUSH AX
PUSH BX
PUSH CX
PUSH DX
PUSH DI
MOV DI,10000
MOV [draw_integer_cl],CL
MOV CX,5
draw_integer_1:
PUSH CX
PUSH AX
PUSH BX
PUSH DX
MOV AX,DX
XOR DX,DX
MOV BX,DI
DIV BX
MOV CH,AL
MUL BX
POP DX
SUB DX,AX
POP BX
POP AX
ADD CH,'0'
MOV CL,[draw_integer_cl]
CALL draw_char
ADD AX,8
PUSH AX
PUSH BX
PUSH DX
MOV AX,DI
MOV BX,10
XOR DX,DX
DIV BX
MOV DI,AX
POP DX
POP BX
POP AX
POP CX
LOOP draw_integer_1
POP DI
POP DX
POP CX
POP BX
POP AX
RET
procka dziala na liczbach 16 bitowych, czyli od 0 do 65535, jej wada to to ze zamiast pisac 10 napisze 00010 lub zamiast 9999 napisze 09999 - poprostu dodaje zera przed liczba, mozna to wyeliminowac stosując porownywanie winikow ale to troche komplikuje kod
FreeBSD r0x'uje
GG: 2175556
www.cepa.end.pl
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Jęsli chodzi o czysty ASM to musisz sobie sam ją sprobnąć :lol:
Komuno wróć !
funkcja w asemblerze. :lol:
Cze Era. Jak co to Reqst'owi to potrzebne do os'a Spytaj sie jego o szczeguły ;D. Ja ino miałem mu pomóc ;p
Z tego co wiem w asemblerze używa siewywołań procesora a nie funkcji jest to programowanie na mnemonikach (tzw. rozkazach procwsora)
Nie wazne jak sie to nazywa. Tylko jak kurde rozwiazac ten problem.
ja w swojej gierce uzylem takiego kodu, gdzie draw_char to funkcja stawiająca znak:
draw_integer: ; AX - x, BX - y, CL - color, DX - integer
PUSH AX
PUSH BX
PUSH CX
PUSH DX
PUSH DI
MOV DI,10000
MOV [draw_integer_cl],CL
MOV CX,5
draw_integer_1:
PUSH CX
PUSH AX
PUSH BX
PUSH DX
MOV AX,DX
XOR DX,DX
MOV BX,DI
DIV BX
MOV CH,AL
MUL BX
POP DX
SUB DX,AX
POP BX
POP AX
ADD CH,'0'
MOV CL,[draw_integer_cl]
CALL draw_char
ADD AX,8
PUSH AX
PUSH BX
PUSH DX
MOV AX,DI
MOV BX,10
XOR DX,DX
DIV BX
MOV DI,AX
POP DX
POP BX
POP AX
POP CX
LOOP draw_integer_1
POP DI
POP DX
POP CX
POP BX
POP AX
RET
procka dziala na liczbach 16 bitowych, czyli od 0 do 65535, jej wada to to ze zamiast pisac 10 napisze 00010 lub zamiast 9999 napisze 09999 - poprostu dodaje zera przed liczba, mozna to wyeliminowac stosując porownywanie winikow ale to troche komplikuje kod
FreeBSD r0x'uje
GG: 2175556
www.cepa.end.pl