Avatar billede shb Nybegynder
23. februar 2006 - 09:35 Der er 4 kommentarer og
1 løsning

asm, xor di,di eller mov di,0?

hey, såvit jeg forstår sætter xor di=0, når di xor'es med sig selv.
jeg har fundet et lille kode eksempel i en tutorial hvor de gør dette frem for "mov di,0" som vel gær det samme????

altså hvad er fordelen ved at gøre dette
XOR DI,DI
frem for dette
MOV DI,0

(jeg er totalt n00b og prøver at få en lille forståelse for asm, så det kan self også være at jeg bare ikke har forstået mov eller xor)
Avatar billede morhan Novice
23. februar 2006 - 09:40 #1
Det er et spørgsmål om antallet af clock cycles, som skal bruges for at udføre operationen. xor varianten bruger færrest
Avatar billede soreno Praktikant
23. februar 2006 - 09:40 #2
Jeg kan huske at have læst (for ca. 8-9 år siden) at bruge xor til at nulstille et register skulle være hurtigere end at flytte 0 over i registret.

Men om det er sådan i dag - det ved jeg ikke. Jeg synes det er svært at holde sig opdateret i nye processor arkitekturer.
Avatar billede shb Nybegynder
23. februar 2006 - 09:46 #3
k, tænkte nok det var noget med hastighed :) tark
be.te.ve. kender i evt nogle irc chans med asm hjælp?
Avatar billede brilleaben Nybegynder
23. februar 2006 - 21:45 #4
På nogle typer CPU'er er en XOR reg,reg en 1 byte (ell. 1 word) instruktion hvorimod MOV reg,val _kan_ være 2 bytes (ell. 2 words).
Gevinsten ved XOR reg,reg er mindre forbrugt clock-cycles samt mindre forbrugt memory.
Ingen af disse er specielt relevante idag på moderne PC'er ... men hardware der benytter
sig af Z80, 8080, 6502 ell. lign. processorer kan såmænd godt have gavn af XOR reg,reg
og lign. time/space savers ...
Avatar billede shb Nybegynder
04. april 2007 - 09:55 #5
herre tak for svar, lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester