
大家帮我看看这个汇编语言题目改怎么修改
#include"stdafx.h"int_tmain(intargc,_TCHAR*argv[]){charmessage1[]="Pleaseinputfirstin...
#include "stdafx.h"
int _tmain(int argc,_TCHAR* argv[])
{
char message1[]="Please input first integers: ";
char message2[]="Please input sencond integers: ";
char message3[]="Please input third integers: ";
char message4[]="Continue(Y/N)? 0 for Yes,other for No :";
char format[]="%d";
char format1[]="%d\n";
int a1;
int a2;
int a3;
int i;
_asm
{
lea eax,message1;
push eax;
call printf;
add esp,4;
lea eax,a1;
push eax;
lea eax,format;
push eax;
call scanf;
add esp,8;
lea eax,message2;
push eax;
call printf;
add esp,4;
lea eax,a2;
push eax;
lea eax,format;
push eax;
call scanf;
add esp,8;
lea eax,message3;
push eax;
call printf;
add esp,4;
lea eax,a3;
push eax;
lea eax,format;
push eax;
call scanf;
add esp,8;
P1: lea eax,message4;
push eax;
call printf;
add esp,4;
mov eax,a1;
add eax,a3;
mov ebx,a2;
mov a1,ebx;
mov ebx,a3;
mov a2,ebx;
mov a3,eax;
push a3;
lea eax,format;
push eax;
call printf;
add esp,8;
lea eax,i;
push eax;
lea eax,format1;
push eax;
call scanf;
add esp,8;
cmp i,0;
je P1;
}
return 0;
}
程序是这样,我只会做到用数字0来继续,有没有办法做出按字母Y来继续呢?
谢谢大家了 展开
int _tmain(int argc,_TCHAR* argv[])
{
char message1[]="Please input first integers: ";
char message2[]="Please input sencond integers: ";
char message3[]="Please input third integers: ";
char message4[]="Continue(Y/N)? 0 for Yes,other for No :";
char format[]="%d";
char format1[]="%d\n";
int a1;
int a2;
int a3;
int i;
_asm
{
lea eax,message1;
push eax;
call printf;
add esp,4;
lea eax,a1;
push eax;
lea eax,format;
push eax;
call scanf;
add esp,8;
lea eax,message2;
push eax;
call printf;
add esp,4;
lea eax,a2;
push eax;
lea eax,format;
push eax;
call scanf;
add esp,8;
lea eax,message3;
push eax;
call printf;
add esp,4;
lea eax,a3;
push eax;
lea eax,format;
push eax;
call scanf;
add esp,8;
P1: lea eax,message4;
push eax;
call printf;
add esp,4;
mov eax,a1;
add eax,a3;
mov ebx,a2;
mov a1,ebx;
mov ebx,a3;
mov a2,ebx;
mov a3,eax;
push a3;
lea eax,format;
push eax;
call printf;
add esp,8;
lea eax,i;
push eax;
lea eax,format1;
push eax;
call scanf;
add esp,8;
cmp i,0;
je P1;
}
return 0;
}
程序是这样,我只会做到用数字0来继续,有没有办法做出按字母Y来继续呢?
谢谢大家了 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询