Главная » Просмотр файлов » Volume 1 Basic Architecture

Volume 1 Basic Architecture (794100), страница 32

Файл №794100 Volume 1 Basic Architecture (Intel and AMD manuals) 32 страницаVolume 1 Basic Architecture (794100) страница 322019-04-28СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 32)

They operate ondata contained in memory, in the general-purpose registers (EAX, EBX, ECX, EDX,EDI, ESI, EBP, and ESP) and in the EFLAGS register. They also operate on addressinformation contained in memory, the general-purpose registers, and the segmentregisters (CS, DS, SS, ES, FS, and GS).This group of instructions includes the data transfer, binary integer arithmetic,decimal arithmetic, logic operations, shift and rotate, bit and byte operations,program control, string, flag control, segment register operations, and miscellaneoussubgroups. The sections that following introduce each subgroup.For more detailed information on general purpose-instructions, see Chapter 7,“Programming With General-Purpose Instructions.”5-2 Vol.

1INSTRUCTION SET SUMMARY5.1.1Data Transfer InstructionsThe data transfer instructions move data between memory and the general-purposeand segment registers. They also perform specific operations such as conditionalmoves, stack access, and data conversion.MOVMove data between general-purpose registers; movedata between memory and general-purpose orsegment registers; move immediates to generalpurpose registersCMOVE/CMOVZConditional move if equal/Conditional move if zeroCMOVNE/CMOVNZConditional move if not equal/Conditional move if notzeroCMOVA/CMOVNBEConditional move if above/Conditional move if notbelow or equalCMOVAE/CMOVNBConditional move if above or equal/Conditional moveif not belowCMOVB/CMOVNAEConditional move if below/Conditional move if notabove or equalCMOVBE/CMOVNAConditional move if below or equal/Conditional moveif not aboveCMOVG/CMOVNLEConditional move if greater/Conditional move if notless or equalCMOVGE/CMOVNLConditional move if greater or equal/Conditional moveif not lessCMOVL/CMOVNGEConditional move if less/Conditional move if notgreater or equalCMOVLE/CMOVNGConditional move if less or equal/Conditional move ifnot greaterCMOVCConditional move if carryCMOVNCConditional move if not carryCMOVOConditional move if overflowCMOVNOConditional move if not overflowCMOVSConditional move if sign (negative)CMOVNSConditional move if not sign (non-negative)CMOVP/CMOVPEConditional move if parity/Conditional move if parityevenVol.

1 5-3INSTRUCTION SET SUMMARYCMOVNP/CMOVPOConditional move if not parity/Conditional move ifparity oddXCHGExchangeBSWAPByte swapXADDExchange and addCMPXCHGCompare and exchangeCMPXCHG8BCompare and exchange 8 bytesPUSHPush onto stackPOPPop off of stackPUSHA/PUSHADPush general-purpose registers onto stackPOPA/POPADPop general-purpose registers from stackCWD/CDQConvert word to doubleword/Convert doubleword toquadwordCBW/CWDEConvert byte to word/Convert word to doubleword inEAX registerMOVSXMove and sign extendMOVZXMove and zero extend5.1.2Binary Arithmetic InstructionsThe binary arithmetic instructions perform basic binary integer computations onbyte, word, and doubleword integers located in memory and/or the general purposeregisters.ADDInteger addADCAdd with carrySUBSubtractSBBSubtract with borrowIMULSigned multiplyMULUnsigned multiplyIDIVSigned divideDIVUnsigned divideINCIncrementDECDecrementNEGNegateCMPCompare5-4 Vol.

1INSTRUCTION SET SUMMARY5.1.3Decimal Arithmetic InstructionsThe decimal arithmetic instructions perform decimal arithmetic on binary codeddecimal (BCD) data.DAADecimal adjust after additionDASDecimal adjust after subtractionAAAASCII adjust after additionAASASCII adjust after subtractionAAMASCII adjust after multiplicationAADASCII adjust before division5.1.4Logical InstructionsThe logical instructions perform basic AND, OR, XOR, and NOT logical operations onbyte, word, and doubleword values.ANDPerform bitwise logical ANDORPerform bitwise logical ORXORPerform bitwise logical exclusive ORNOTPerform bitwise logical NOT5.1.5Shift and Rotate InstructionsThe shift and rotate instructions shift and rotate the bits in word and doublewordoperands.SARShift arithmetic rightSHRShift logical rightSAL/SHLShift arithmetic left/Shift logical leftSHRDShift right doubleSHLDShift left doubleRORRotate rightROLRotate leftRCRRotate through carry rightRCLRotate through carry left5.1.6Bit and Byte InstructionsBit instructions test and modify individual bits in word and doubleword operands.Byte instructions set the value of a byte operand to indicate the status of flags in theEFLAGS register.Vol.

1 5-5INSTRUCTION SET SUMMARYBTBit testBTSBit test and setBTRBit test and resetBTCBit test and complementBSFBit scan forwardBSRBit scan reverseSETE/SETZSet byte if equal/Set byte if zeroSETNE/SETNZSet byte if not equal/Set byte if not zeroSETA/SETNBESet byte if above/Set byte if not below or equalSETAE/SETNB/SETNC Set byte if above or equal/Set byte if not below/Setbyte if not carrySETB/SETNAE/SETC Set byte if below/Set byte if not above or equal/Setbyte if carrySETBE/SETNASet byte if below or equal/Set byte if not aboveSETG/SETNLESet byte if greater/Set byte if not less or equalSETGE/SETNLSet byte if greater or equal/Set byte if not lessSETL/SETNGESet byte if less/Set byte if not greater or equalSETLE/SETNGSet byte if less or equal/Set byte if not greaterSETSSet byte if sign (negative)SETNSSet byte if not sign (non-negative)SETOSet byte if overflowSETNOSet byte if not overflowSETPE/SETPSet byte if parity even/Set byte if paritySETPO/SETNPSet byte if parity odd/Set byte if not parityTESTLogical compare5.1.7Control Transfer InstructionsThe control transfer instructions provide jump, conditional jump, loop, and call andreturn operations to control program flow.JMPJumpJE/JZJump if equal/Jump if zeroJNE/JNZJump if not equal/Jump if not zero5-6 Vol.

1INSTRUCTION SET SUMMARYJA/JNBEJump if above/Jump if not below or equalJAE/JNBJump if above or equal/Jump if not belowJB/JNAEJump if below/Jump if not above or equalJBE/JNAJump if below or equal/Jump if not aboveJG/JNLEJump if greater/Jump if not less or equalJGE/JNLJump if greater or equal/Jump if not lessJL/JNGEJump if less/Jump if not greater or equalJLE/JNGJump if less or equal/Jump if not greaterJCJump if carryJNCJump if not carryJOJump if overflowJNOJump if not overflowJSJump if sign (negative)JNSJump if not sign (non-negative)JPO/JNPJump if parity odd/Jump if not parityJPE/JPJump if parity even/Jump if parityJCXZ/JECXZJump register CX zero/Jump register ECX zeroLOOPLoop with ECX counterLOOPZ/LOOPELoop with ECX and zero/Loop with ECX and equalLOOPNZ/LOOPNELoop with ECX and not zero/Loop with ECX and notequalCALLCall procedureRETReturnIRETReturn from interruptINTSoftware interruptINTOInterrupt on overflowBOUNDDetect value out of rangeENTERHigh-level procedure entryLEAVEHigh-level procedure exitVol.

1 5-7INSTRUCTION SET SUMMARY5.1.8String InstructionsThe string instructions operate on strings of bytes, allowing them to be moved to andfrom memory.MOVS/MOVSBMove string/Move byte stringMOVS/MOVSWMove string/Move word stringMOVS/MOVSDMove string/Move doubleword stringCMPS/CMPSBCompare string/Compare byte stringCMPS/CMPSWCompare string/Compare word stringCMPS/CMPSDCompare string/Compare doubleword stringSCAS/SCASBScan string/Scan byte stringSCAS/SCASWScan string/Scan word stringSCAS/SCASDScan string/Scan doubleword stringLODS/LODSBLoad string/Load byte stringLODS/LODSWLoad string/Load word stringLODS/LODSDLoad string/Load doubleword stringSTOS/STOSBStore string/Store byte stringSTOS/STOSWStore string/Store word stringSTOS/STOSDStore string/Store doubleword stringREPRepeat while ECX not zeroREPE/REPZRepeat while equal/Repeat while zeroREPNE/REPNZRepeat while not equal/Repeat while not zero5.1.9I/O InstructionsThese instructions move data between the processor’s I/O ports and a register ormemory.INRead from a portOUTWrite to a portINS/INSBInput string from port/Input byte string from portINS/INSWInput string from port/Input word string from portINS/INSDInput string from port/Input doubleword string from portOUTS/OUTSBOutput string to port/Output byte string to portOUTS/OUTSWOutput string to port/Output word string to portOUTS/OUTSDOutput string to port/Output doubleword string to port5-8 Vol.

1INSTRUCTION SET SUMMARY5.1.10Enter and Leave InstructionsThese instructions provide machine-language support for procedure calls in blockstructured languages.ENTERHigh-level procedure entryLEAVEHigh-level procedure exit5.1.11Flag Control (EFLAG) InstructionsThe flag control instructions operate on the flags in the EFLAGS register.STCSet carry flagCLCClear the carry flagCMCComplement the carry flagCLDClear the direction flagSTDSet direction flagLAHFLoad flags into AH registerSAHFStore AH register into flagsPUSHF/PUSHFDPush EFLAGS onto stackPOPF/POPFDPop EFLAGS from stackSTISet interrupt flagCLIClear the interrupt flag5.1.12Segment Register InstructionsThe segment register instructions allow far pointers (segment addresses) to beloaded into the segment registers.LDSLoad far pointer using DSLESLoad far pointer using ESLFSLoad far pointer using FSLGSLoad far pointer using GSLSSLoad far pointer using SS5.1.13Miscellaneous InstructionsThe miscellaneous instructions provide such functions as loading an effectiveaddress, executing a “no-operation,” and retrieving processor identification information.LEALoad effective addressNOPNo operationVol.

Характеристики

Тип файла
PDF-файл
Размер
3,16 Mb
Материал
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6417
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее