简体   繁体   中英

x86 register flag abbreviations

I'm currently studying assembly language.

In Microsoft visual studio 2017, I wanted to check the current status of the register flags.

在此处输入图片说明

I wanted to know what each register flag abbreviation stands for, so I checkout the wiki page on x86 register flags .

在此处输入图片说明

But as you can see, the register flag abbreviations shown in Visual studio do not match the abbreviations in the wiki page.

For the register flags in the visual studio, how can I find out what they stand for?

Microsoft seems to use slightly different abbreviations for the flags, they can be found inolder Visual Studio documentation :

OV: Overflow
UP: Direction
EI: Interrupt
PL: Sign
ZR: Zero
AC: Auxiliary carry
PE: Parity
CY: Carry

Overflow flag(OV): Set to 1, when given instruction is for eg of 32bit and resultant value is of 33bit.

Direction flag(UP): Used for operations on strings like lodsb . If set to 1, the acess is from higher memory location to lower memory location else the acess is from loower memory location to higher memory location.

Interrupt flag(EI): Help cpu to identify external interrupt. If set to 1 then microprocessor will recognize interupt request. Else it will ignore the interupt request.

Sign(PL): Set to 1, when most significient bit is 1.

Zero(ZR): set to 1, if result is zero after instruction excuetion.

Auxiliary carry(AE): Bocome 1, if 4th bit generate carry.

Parity(PE): Become 1, if number of 1 bits in the low byte of the result is even.

Carry (CY): set to 1, if carry is generated after a operation.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM