完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
(1)数据传送类指令(7种助记符)
MOV(英文为Move):对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送; MOVC(Move Code)读取程序存储器数据表格的数据传送; MOVX (Move External RAM) 对外部RAM的数据传送; XCH (Exchange) 字节交换; XCHD (Exchange low-order Digit) 低半字节交换; PUSH (Push onto Stack) 入栈; POP (Pop from Stack) 出栈; (2)算术运算类指令(8种助记符) ADD(Addition) 加法; ADDC(Add with Carry) 带进位加法; SUBB(Subtract with Borrow) 带借位减法; DA(Decimal Adjust) 十进制调整; INC(Increment) 加1;DEC(Decrement) 减1; MUL(Multiplication、Multiply) 乘法; DIV(Division、Divide) 除法; (3)逻辑运算类指令(10种助记符) ANL(AND Logic) 逻辑与; XRL(Exclusive-OR Logic) 逻辑异或; CLR(Clear) 清零;CPL(Complement) 取反; RL(Rotate left) 循环左移; RLC(Rotate Left throught the Carry flag) 带进位循环左移; RR(Rotate Right) 循环右移; RRC (Rotate Right throught the Carry flag) 带进位循环右移; SWAP (Swap) 低4位与高4位交换; (4)控制转移类指令(17种助记符) ACALL(Absolute subroutine Call)子程序绝对调用; LCALL(Long subroutine Call)子程序长调用; RET(Return from subroutine)子程序返回; RETI(Return from Interruption)中断返回; SJMP(Short Jump)短转移;LJMP长转移; AJMP(Absolute Jump)绝对转移; CJNE (Compare Jump if Not Equal)比较不相等则转移; DJNZ (Decrement Jump if Not Zero)减1后不为0则转移; JZ (Jump if Zero)结果为0则转移; JNZ (Jump if Not Zero) 结果不为0则转移; JC (Jump if the Carry flag is set)有进位则转移; JNC (Jump if Not Carry)无进位则转移; JB (Jump if the Bit is set)位为1则转移; JNB (Jump if the Bit is Not set) 位为0则转移; (3)JBC(Jump if the Bit is set and Clear the bit) 位为1则转移,并清除该位; NOP (No Operation) 空操作; (5)位操作指令(1种助记符) SETB(Set Bit) 位 置1 。 1.通用数据传送指令。 MOV----》 move MOVSX----》extended move with sign data MOVZX----》extended move with zero data PUSH----》push POP----》pop PUSHA----》push all POPA----》pop all PUSHAD----》push all data POPAD----》pop all data BSWAP----》byte swap XCHG----》exchange CMPXCHG----》compare and change XADD----》exchange and add XLAT----》translate 2.输入输出端口传送指令。 IN----》input OUT----》output 3.目的地址传送指令。 LEA----》load effective address LDS----》load DS LES----》load ES LFS----》load FS LGS----》load GS LSS----》load SS 4.标志传送指令。 LAHF----》load AH from flag SAHF----》save AH to flag PUSHF----》push flag POPF----》pop flag PUSHD----》push dflag POPD----》pop dflag [!--empirenews.page--] 二、算术运算指令 ADD----》add ADC----》add with carry INC----》increase 1 AAA----》ascii add with adjust DAA----》decimal add with adjust SUB----》substract SBB----》substract with borrow DEC----》decrease 1 NEC----》negative CMP----》compare AAS----》ascii adjust on substract DAS----》decimal adjust on substract MUL----》multiplication IMUL----》integer multiplication AAM----》ascii adjust on multiplication DIV----》divide IDIV----》integer divide AAD----》ascii adjust on divide CBW----》change byte to word CWD----》change word to double word CWDE----》change word to double word with sign to EAX CDQ----》change double word to quadrate word 三、逻辑运算指令 AND----》and OR----》or XOR----》xor NOT----》not TEST----》test SHL----》shift left SAL----》arithmatic shift left SHR----》shift right SAR----》arithmatic shift right ROL----》rotate left ROR----》rotate right RCL----》rotate left with carry RCR----》rotate right with carry 四、串指令 MOVS----》move string CMPS----》compare string SCAS----》scan string LODS----》load string STOS----》store string REP----》repeat REPE----》repeat when equal REPZ----》repeat when zero flag REPNE----》repeat when not equal REPNZ----》repeat when zero flag REPC----》repeat when carry flag REPNC----》repeat when not carry flag 五、程序转移指令 1》无条件转移指令(长转移) JMP----》jump CALL----》call RET----》return RETF----》return far 2》条件转移指令(短转移,-128到+127的距离内) JAE----》jump when above or equal JNB----》jump when not below JB----》jump when below JNAE----》jump when not above or equal JBE----》jump when below or equal JNA----》jump when not above JG----》jump when greater JNLE----》jump when not less or equal JGE----》jump when greater or equal JNL----》jump when not less JL----》jump when less JNGE----》jump when not greater or equal JLE----》jump when less or equal JNG----》jump when not greater JE----》jump when equal JZ----》jump when has zero flag JNE----》jump when not equal JNZ----》jump when not has zero flag JC----》jump when has carry flag JNC----》jump when not has carry flag JNO----》jump when not has overflow flag JNP----》jump when not has parity flag JPO----》jump when parity flag is odd JNS----》jump when not has sign flag JO----》jump when has overflow flag JP----》jump when has parity flag JPE----》jump when parity flag is even JS----》jump when has sign flag [!--empirenews.page--] 3》循环控制指令(短转移) LOOP----》loop LOOPE----》loop equal LOOPZ----》loop zero LOOPNE----》loop not equal LOOPNZ----》loop not zero JCXZ----》jump when CX is zero JECXZ----》jump when ECX is zero 4》中断指令 INT----》interrupt INTO----》overflow interrupt IRET----》interrupt return 5》处理器控制指令 HLT----》halt WAIT----》wait ESC----》escape LOCK----》lock NOP----》no operation STC----》set carry CLC----》clear carry CMC----》carry make change STD----》set direction CLD----》clear direction STI----》set interrupt CLI----》clear interrupt 六、伪指令 DW----》define word PROC----》procedure ENDP----》end of procedure SEGMENT----》segment ASSUME----》assume ENDS----》end segment(段, 节,片断) END----》end |
|
|
|
只有小组成员才能发言,加入小组>>
1934个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36421 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4928 浏览 1 评论
6109 浏览 1 评论
6819 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4249 浏览 0 评论
653浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
646浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
647浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
736浏览 2评论
848浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 01:17 , Processed in 1.018622 second(s), Total 83, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号