MUL 匯編語言無符號數(shù)乘法指令
10多年建站經(jīng)驗(yàn), 做網(wǎng)站、成都做網(wǎng)站客戶的見證與正確選擇。創(chuàng)新互聯(lián)提供完善的營銷型網(wǎng)頁建站明細(xì)報(bào)價(jià)表。后期開發(fā)更加便捷高效,我們致力于追求更美、更快、更規(guī)范。
MUL AB:
乘法指令的功能是將A和B中兩個(gè)無符號8位二進(jìn)制數(shù)相乘,所得的16位積的低8位存于A中,高8位存于B中。如果乘機(jī)大于256,即高位B不為0,則OV置1;否則OV清0,CY總是清0。
例如:設(shè)(A)=50H(80),(B)=0A0H(160)
若執(zhí)行MUL AB,
則執(zhí)行結(jié)果為:
乘積為3200H(12800),
(A)=00H,(B)=32H,(OV)=1,(CY)=0
定義了一個(gè)函數(shù)叫mul,輸入n作為參數(shù),返回一個(gè)unsigned long類型的結(jié)果
int sub(int x,int y);
int mul(int x,int y);
int div(int x,int y);
#include math.hgt;
#include stdio.hgt;
void main()
{
int a,b,c,d,e,f,g,h,i;
printf("XXXXXXXXXXXXXXX計(jì)算器");
printf("\n");
for(c=1;clt;=30;c++)
printf("*");
printf("\n");
printf("請輸入一個(gè)整數(shù)");
printf("\n");
scanf("%d",a);
printf("\n");
for(c=1;clt;=30;c++)
printf("-");
printf("\n");
printf("請選擇您要做的運(yùn)算:1.+,2.-,3.*,4./5.abs,6.sqrt");
printf("\n");
for(c=1;clt;=30;c++)
printf("*");
printf("\n");
scanf("%d",d);
printf("\n");
if(d==5) (如果想做絕對值,就直接做abs函數(shù)(它是個(gè)庫函數(shù)).做完后就goto"end"--也就是函數(shù)的最后.)
if(d==6) ;}(如果想做開平方,就直接做sqrt函數(shù)(它是個(gè)庫函數(shù)).做完后就goto"end"--也就是函數(shù)的最后.)
printf("請?jiān)俅屋斎胍粋€(gè)整數(shù)"); (如果是做雙目的就開始輸入第二個(gè)數(shù)b)
printf("\n");
scanf("%d",b);
printf("\n");
switch(d)
{
case 1:add(a,b);break;
case 2:sub(a,b);break;
case 3:mul(a,b);break;
case 4:div(a,b);break;
default:printf("date input error,\n");
} end: printf("\n");}
int add(int x,int y)
{
int m;
m=x+y;
printf("%d",m);
return m;
}
int sub(int x,int y)
{
int m;
m=x-y;
printf("%d",m);
return m;
}
int mul(int x,int y)
{
int m;
m=x*y;
printf("%d",m);
return m;
}
int div(int x,int y)
{
int m;
m=x/y;
printf("%d",m);
return m;
}
(你試試看吧,應(yīng)該可以,呵呵)
另外,虛機(jī)團(tuán)上產(chǎn)品團(tuán)購,超級便宜。