1, 汇编语言中,cmp指令怎么用?比如cmp ax,bx ax大于bx怎么跳转,小...
CMP OPR1 , OPR2指令只是对操作数OPR1 , OPR2之间运算比较,不保存结果。指令本身不进行跳转,只是根据结果设置相关的条件标志位(SF、ZF、CF、OF),CMP指令后往往跟着条件转移指令,实现根据比较的结果产生不同的程序分支的功能。格式:CMP OPR1 , OPR2.执行操作:(OPR1)-(OPR2)功能:该指令与SUB指令一样执行减法的操作,但它并不保存运算结果,只是根据结果设置相关的条件标志位(SF、ZF、CF、OF)。CMP指令后往往跟着条件转移指令,实现根据比较的结果产生不同的程序分支的功能。跳转相关的条件跳转指令:1、JA/JNBE DEST指令:转移条件是CF=0 AND ZF=0,含义是无符号数A>B,英文表示是JMP above (not below or equal)。2、JAE/JNB DEST指令:转移条件是CF=0,含义是无符号数A≥B,英文表示是JMP above or equal (not below )。3、JB/JNAE DEST指令:转移条件是CF=1,含义是无符号数A<B,英文表示是JMP blow (not above or equal)。4、JBE/JNA DEST指令:转移条件是CF=1 OR ZF=1,含义是无符号数A≤B,英文表示是JMP blow or equal (not above)。参考资料来源:百度百科-CMP指令参考资料来源:百度百科-条件转移指令
2, 汇编语言里jc指令是什么意思?
JC=Jump if Carry当运算产生进位标志时,即CF=1时,跳转到目标程序处。例如:add al,bljc carrybitinc al;如果al+bl产生了进位,这一句就不执行了。carrybit:neg al这段程序没有任何意义,仅仅作为示例哈。。。相同的指令还有:JNC,当CF=0时跳转;JZ,当ZF=1时跳转,JNZ,当ZF=0时跳转;JO,当OF=1时跳转,JNO,当OF=0时跳转;JP,当PF=1时跳转……依此类推,标志寄存器的各个位基本上都可以用来做“条件跳转”的条件。当然,条件跳转不仅仅是标志寄存器位,还可以是CX如:a_loop:;do something dec cxjcxz jmp a_loop可以看出,这一段相当于一个loop指令。。。还有,用于大小判断型的:cmp op1,op2JXX XXXX其中JXX有以下几种:JA表示op1>op2,JNA表示op1<=op2;JB表示op1<op2,JNB表示op1>=op2;JE表示op1=op2,JNE表示op1<>op2;还有JAE、JNAE、JBE、JNBE等等功能重复不再赘述。以上是无符号数的比较。有符号数的比较将A换成G,将B换成L即可。A=above B=below G=greater L=less介绍的够详细了吧。。。
3, 汇编语言中,串操作指令LODSB/LODSW怎么用?
这是块装入指令,把SI指向的存储单元读入累加器,LODSB就读入AL,LODSW就读入AX中,然后SI自动增加或减小1或2.块装入指令常常用来对数组或字符串中的元素逐个进行处理.例如,假设以下的array为程序中定义的数组,items为数组长度,那么如下方法遍历此数组.xor di,dilea si,arraycldc50:lodsdinc dicmp di,itemsjbe c50
名词解释
数组
所谓数组,是有序的元素序列。若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按无序的形式组织起来的一种形式。这些无序排列的同类数据元素的集合称为数组。 数组是用于储存多个相同类型数据的集合。
SI
硅(英语:silicon)是一种类金属元素,化学符号为Si,原子序数为14,属于元素周期表上的IVA族。相对原子质量28.0855,有无定形硅和晶体硅两种同素异形体,属于元素周期表上第三周期,IVA族的类金属元素。硅也是极为常见的一种元素,然而它极少以单质的形式在自然界出现,而是以复杂的硅酸盐或二氧化硅的形式,广泛存在于岩石、砂砾、尘土之中。硅在宇宙中的储量排在第八位。在地壳中,它是第二丰富的元素,构成地壳总质量的26.4%,仅次于第一位的氧(49.4%)。
di
DI是英文DESTINATIONIMAGINATION的英文缩写,中文译为“目的地想象”,是一项国际性的培养青少年创造力的活动。DI协会成立于1983年,总部设在美国的新泽西州,并于每年5月份在美国举办DI全球总决赛。