invertera i assambler?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Detraw
Inlägg: 630
Blev medlem: 31 januari 2004, 10:32:37
Ort: Stockholm (Nacka)

invertera i assambler?

Inlägg av Detraw »

Japp som rubriken säger: finns det nån metod att invertera ett register i assambler, alltså så alla 1:or blir 0:or och tvårtom... har letat genom databladet för min AVR men hittar det inte där....
gvs
EF Sponsor
Inlägg: 1688
Blev medlem: 18 oktober 2003, 14:20:34
Ort: Göteborg
Kontakt:

Inlägg av gvs »

fyll ett register med bara ettor sen xorar du det med de registret du vill invertera
Detraw
Inlägg: 630
Blev medlem: 31 januari 2004, 10:32:37
Ort: Stockholm (Nacka)

Inlägg av Detraw »

smart... är lite ny på assambler som du kanske märkt :D

tackar
Användarvisningsbild
marvin
Inlägg: 214
Blev medlem: 30 maj 2003, 22:24:57
Ort: Göteborg
Kontakt:

Inlägg av marvin »

precis, om du inte orkar ettställa ett register kan du alltid använda "COM" (ettkomplement)
Hoppas att du har atmels "instruction set summary"
http://www.atmel.com/dyn/resources/prod ... OC0856.PDF
Den är förklarande.[/url]
Detraw
Inlägg: 630
Blev medlem: 31 januari 2004, 10:32:37
Ort: Stockholm (Nacka)

Inlägg av Detraw »

hmm nej den hade jag inte.. har bara suttit med den som fanns i databladet för avr:en... men denna verkar ju lite mer utförlig, tackar...

hittade föresten ett kommando sen som hette INV beskrivningen till den ser ut så här:

Kod: Markera allt

Rd <-- $00 - Rd
så jag antar att det gör samma sak, eller har jag fel?
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Inlägg av Melker »

Vet ingen instruktion till AVR som heter "inv". Det man brukar använda för att invertera ett tal är första komplement(com), som marvin säger och den finns med i "instruction set summery" i databladet.
Detraw
Inlägg: 630
Blev medlem: 31 januari 2004, 10:32:37
Ort: Stockholm (Nacka)

Inlägg av Detraw »

förlåt mig... NEG menar jag, hmm vet inte vart jag fick INV ifrån...
Användarvisningsbild
erixon
Inlägg: 380
Blev medlem: 27 augusti 2003, 10:21:58

Inlägg av erixon »

NEG är för två compliment och ger fel om man ska invertera bitar, dock fungerar det bra för att invertera tal...
så ska man invertera bitar så fungerar COM utmärkt :)
Detraw
Inlägg: 630
Blev medlem: 31 januari 2004, 10:32:37
Ort: Stockholm (Nacka)

Inlägg av Detraw »

hehe jo jag märkte att det blev fel med bitar, hehe

men nu med COM funkar allt, tackar
Skriv svar