03.01.2015 Views

80C186EC/80C188EC Microprocessor User's Manual

80C186EC/80C188EC Microprocessor User's Manual

80C186EC/80C188EC Microprocessor User's Manual

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

OVERVIEW OF THE 80C186 FAMILY ARCHITECTURE<br />

Table 2-5 shows the interpretations of various bit patterns according to number type. Binary numbers<br />

can be 8 or 16 bits long. Decimal numbers are stored in bytes, two digits per byte for packed<br />

decimal and one digit per byte for unpacked decimal. The processor assumes that the operands in<br />

arithmetic instructions contain data that represents valid numbers for that instruction. Invalid data<br />

may produce unpredictable results. The Execution Unit analyzes the results of arithmetic instructions<br />

and adjusts status flags accordingly.<br />

Table 2-4. Arithmetic Instructions<br />

Addition<br />

ADD Add byte or word<br />

ADC Add byte or word with carry<br />

INC Increment byte or word by 1<br />

AAA ASCII adjust for addition<br />

DAA Decimal adjust for addition<br />

Subtraction<br />

SUB Subtract byte or word<br />

SBB Subtract byte or word with borrow<br />

DEC Decrement byte or word by 1<br />

NEG Negate byte or word<br />

CMP Compare byte or word<br />

AAS ASCII adjust for subtraction<br />

DAS Decimal adjust for subtraction<br />

Multiplication<br />

MUL<br />

IMUL<br />

AAM<br />

Multiply byte or word unsigned<br />

Integer multiply byte or word<br />

ASCII adjust for multiplication<br />

Division<br />

DIV<br />

IDIV<br />

AAD<br />

CBW<br />

CWD<br />

Divide byte or word unsigned<br />

Integer divide byte or word<br />

ASCII adjust for division<br />

Convert byte to word<br />

Convert word to double-word<br />

2-20

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!