Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: Assembly: Assemblyyn viive

Sivun loppuun

Antti Laaksonen [20.07.2002 21:38:30]

#

Sattuisiko joku tietämään jotain yksinkertaista tapaa tehdä pieni viive assembly-ohjelmaan? Joku QBasicin WAIT &H3DA,8 -komentoa vastaava olisi kaikkein paras. Assembly kun on niin nopea, että animaation vaiheet eivät tahdo oikein näkyä...

thefox [21.07.2002 00:59:14]

#

Jos MASM:illa kääntelet niin:

mov dx, 3DAh
in al, dx
and al, 08h
jnz @B

@@:
in al, dx
and al, 08h
jz @B

thefox [21.07.2002 01:00:12]

#

Oho tuli virhe (ekalta riviltä puuttuu @@:)
Korjattu:

@@:
mov dx, 3DAh
in al, dx
and al, 08h
jnz @B

@@:
in al, dx
and al, 08h
jz @B

TH [21.07.2002 09:27:57]

#

Miten joku voi edes osata tuommosta kieltä? :) Näyttää vaikealta.

thefox [21.07.2002 14:28:23]

#

ÖH! Pitääpä korjata taas kerran :X Näinhän se ois kaikista järkevin:

mov dx, 3DAh
@@:
in al, dx
and al, 08h
jnz @B

@@:
in al, dx
and al, 08h
jz @B

Lauri [21.07.2002 15:07:58]

#

No onko erillaista tehdä NASM:illa

Lauri [21.07.2002 15:09:22]

#

Siis TASM:illa

Lauri [21.07.2002 15:09:47]

#

Öhh... vai kumpi se oli?

(nimetön) [21.07.2002 16:02:55]

#

hyvin hyvin pienen viiveen saa :
nop

Mutta näitä mahtuu yhteen sekntiin erimäärä koneen hertsi vauhdista riippuen

thefox [22.07.2002 03:48:51]

#

Olipas Osmolla turha viesti ;) Saahan nyt viiveen vaikka:

inc eax
dec eax
neg eax
neg eax

Mutta koska senkin nopeus riippuu koneesta niin ei mitään hyötyä :) TASM:ille ja NASM:ille:

mov dx, 3DAh
_b1:
in al, dx
and al, 08h
jnz _b1

_b2:
in al, dx
and al, 08h
jz _b2

Antti Laaksonen [22.07.2002 12:02:39]

#

Jep, tuo toimii juuri niin kuin pitää. Kiitokset avusta.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta