if((a!=20)&&(b!=10)) a=a-b;用汇编语言实现?

如题所述

第1个回答  2013-10-21

push ax;;寄存器保存

push bx


    mov ax,a

    mov bx,b;对变量a,b的初始化

    cmp ax,14H

    je next

    cmp bx,0ah

    je next

;a=a-b;

    sub ax,bx;实际中变量都是放在栈上的而不是寄存器上的,这点自己改吧

next: 后续代码

pop ax

pop bx

本回答被提问者采纳

if((a!=20)&&(b!=10)) a=a-b;用汇编语言实现?
push ax;;寄存器保存 push bx mov ax,a mov bx,b;对变量a,b的初始化 cmp ax,14H je next cmp bx,0ah je next ;a=a-b;sub ax,bx;实际中变量都是放在栈上的而不是寄存器上的,这点自己改吧 next: 后续代码 pop ax pop bx ...

用ARM汇编语言程序段实现下面的if语句.
ADR r4,a; 读取变量a的地址 LDR r0,[r4]; 读变量a的内容到r0 ADR r4,b; 读取变量b的地址 LDR r1,[r4]; 读变量b的内容到r1 CMP r0,r1;BGE fblock; 如果a>=b,跳转到fblock ADR r4,x;MOV r0,#5;STR r0,[r4]; 令x=5 ADR r4,c; 读取变量c的地址 LDR r...

汇编语言程序设计题目,在线等答案!!!急!
MSG1 DB 13, 10, 'A >= B $'MSG2 DB 13, 10, 'A < B $'DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START:MOV AX, DATA MOV DS, AX MOV AL, A ;取来A SUB AL, B ;减去B JB FU ;不够减转移.LEA DX, MSG1 ;够减...

用汇编语言编写A=2*B(位移的方式)
shl eax,1 mov A,eax

关于汇编语言程序( )。
【答案】:C C【解析】汇编语言程序相对于机器语言程序具有良好的可移植性。

c语言求最大公约数while循环
include<stdio.h>#include<windows.h>#pragma warning(disable:4996)int main(){\/\/更相减损法inta=0;int b=0;printf("请输出两个整数:");scanf("%d%d",&a,&b);while((a-b)!=0){if(a>b){a=a-b;}else{b=b-a;}}printf("最大公约数为:%d\\n",b);system("pause");return0;...

c语言if语句的用法例子c语言if语句的用法有哪些
1、 if……形式 一般格式:if(表达式) 语句;语义是:如果表达式的值为真,则执行其后的语句,否则不执行该语句。语句可以是单条语句,也可以是用花括号{}包括起来的复合语句。示例如下:include int main(){ int a,b,max;printf(" input two numbers: ");scanf("%d%d",&a,&b);max=a;if ...

汇编语言请教: DIV AB ,A=00H,B=02H;求运算后的A和B?
A=0,B=0

复合赋值运算符讲解
if (a<b) min = a; else min = b; \/\/这一段的意思是当a<b时min的值为a的值,否则为b的值。 用条件运算符去构成条件表达式就变得简单明了了: min = (a<b)?a : b 很明显它的结果和含意都和上面的一段程序是一样的,但是代码却比上一段程序少很多,编译的效率也相对要高,但有着和复合赋值表达式...

超简单问题:用汇编语言怎样实现c=a+b?
mov al,a mov bl,b add al,bl mov c,al 呵呵,不知道你要那种形式的答案。也不知道这a,b,c是几个字节的。

相似回答