LOCK - aktivuj signál BUS LOCK
Verze z 4. 1. 2013, 18:02, kterou vytvořil Zdeno Sekerák (diskuse | příspěvky) (1 revízia: Assembler pismeno L,M)
- Instrukce
- LOCK - aktivuj signál BUS LOCK
- Časování
- 0
- Popis
- Prefix LOCK před instrukcí vyjadruje, že oblast paměti specifikována operandem instrukce instruction bude zablokována. Toho je dosaženo aktivací signálu BUS LOCK procesoru 80386. Oblast paměti zůstava ve skutečnosti zablokována a protektována, dokud procesor nevykoná instrukci jež odblokuje paměťovou oblast stejnou s oblastí specifikovanou druhým operandem instrukce LOCK. Instrukce u 80386 jež mohou mít prefix LOCK jsou nasledujíci:
- BT,BTS,BTR,BTC - pamet, registr/bezprostrední operand
- XCG - pamet, registr
- XCG - registr, pamet
- ADC,SUB,ADC,SBB - pamet,registr/bezprostrední operand
- OR,XOR,AND - pamet, registr/bezprostrední operand
- NEG,INC,DEC,NOT - pamet
- Syntaxe
- LOCK instruction, operand_type
- Ovlivňuje příznaky
- žádné
- Nedefinované příznaky
- žádné
- Výjimky v privilegovaném módu
- Je generována všeobecná výjimka porušení ochrany paměti v případe že I/O privilegovaná úroveň je nižší než aktuálni privilegovaná úroveň.
- Poznámka pro 80386
- Blokovací funkce u 80386 jsou podmnožinou blokovacích funkcí u 8086 a 80286. Aplikace psané pro 8086 a 80286 tedy nemusí probíhat korektně na 80386.
- Příklad
- LOCK XCG MEM_WRD,AX