keisk profesija blin, skamba kaip chirurgas sakytu: gal kas gali pjuvi cia uz mane padaryti? gerbti reikia bent save, jei negerbi kitu. Papaja wrote: > Sveiki, taip gavosi, kad kiek beskaiciau tutorialu ir pan. niekaip > nesuprantu kaip padaryt uzduoti... Uzduotis turi priimti 2 skaicius(po viena > arba per space abu uzrasyti tai tikrai nesvarbu) 1-masis skaicius turi buti > pakeistas i antrojo skaiciaus skaiciavimo systema... > Pvz: Ivedame 3 ir 2, reikia, kad gautume rezultata 11, ivedam 7 ir 4, tai > turetu buti 13... > Kolkas turiu programa, kurioje ivedi skaiciu ir gali pakeisti skaiciavimo > systema tik manuol budu, gal yra mokanciu programuoti kurie galetu padeti > paeditint sia programa :? > > > .model small > .stack 100h > .data > ivedimo_msg DB "Iveskite skaiciu: ","$" > isvedimo_msg DB "Rezultatas: ","$" > enteris DB 13,10,"$" > buff DB 255 > DB 0 > DB 255 dup(0) > .code > start: > ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; > ;; Nurodom duomenu pradzia > ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; > MOV ax,@data > MOV ds,ax > ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; > ;; Pagalbos simboliu ieskojimas argumente > ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; > MOV bx, 0081h > ieskok: > MOV ax, es:[bx] > CMP al, 0Dh > JE programa > CMP ax, 3F2Fh > JE pagalba > INC bx > JMP ieskok > pagalba: > MOV ah, 9 > INT 21h > JMP endas > > > programa: > ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; > ;; Skaitom > ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; > MOV ah, 09h > MOV dx, offset ivedimo_msg > INT 21h > XOR si,si > XOR di,di > XOR cx,cx > XOR dx,dx > MOV bx,10 > MOV ah, 0Ah > MOV dx, offset buff > INT 21h > MOV dx, offset enteris > MOV ah, 09h > INT 21h > MOV si, 1 > MOV al, buff[si] > XOR ah, ah > MOV di, ax > INC si > INC di > INC di > next: > MOV al, buff[si] > XOR ah, ah > SUB al, '0' > CMP al, 9 > JA endas > INC si > ADD ax, cx > JC endas > CMP si, di > JE suma > MUL bx > CMP ax, cx > JB endas > MOV cx, ax > CMP si, di > JLE next > suma: > XOR si, si > MOV cx, ax > JC endas > MOV ax,cx > CALL astuntainis > JMP endas > ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; > ;; Procedura astuntainis > ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; > astuntainis PROC > PUSH ax > PUSH cx > PUSH dx > MOV cx, 8 ;;;;;;;;;;;;;;;;;;;;;;;;;;; <- pakeitus skaiciu keicia i tokia > systema > PUSH "$$" > ciklas: > MOV dx, 0 > DIV cx > PUSH dx > CMP ax, 0 > JNE ciklas > MOV ah, 2 > spausdinimas: > POP dx > CMP dx, "$$" > JE pabaiga > ADD dl, '0' > INT 21h > JMP spausdinimas > pabaiga: > POP dx > POP cx > POP ax > RET > astuntainis ENDP > ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; > ;; Pabaiga > ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; > > endas: > MOV ah, 4ch > MOV al, 0 > INT 21h > end start > >