【汇编语言实战】输入2个整数求最大公约数

简介: 【汇编语言实战】输入2个整数求最大公约数

C语言描述该程序流程:


//辗转相除法
#include <stdio.h>
int main()
{
  int a,b;
  scanf("%d %d",&a,&b);
  while(a-b!=0)
  {
  if(a>b)
  {
    a=a-b;
  }
  else
  {
    b=b-a;
  }
  }
  printf("%d",a);
}


汇编语言:


include irvine32.inc
.data
a dword ?
b dword ?
.code
main proc
call readint
mov a,eax
call readint
mov b,eax
mov eax,a
mov ebx,b
func:
cmp eax,ebx
jne compare ;如果不相等就跳转到compare,否则直接output输出
output:
call writeint
exit
compare:
jge jianfa ;如果a>b,则进行a-b
sub ebx,eax ;否则进行b-a
jmp func
jianfa:
sub eax,ebx
jmp func
main endp
end main


运行结果:


目录
相关文章
|
3月前
|
C语言
【汇编语言实战】实现九九乘法表
【汇编语言实战】实现九九乘法表
30 2
|
3月前
|
C语言
【汇编语言实战】实现输出集合{1,2,...,n}全排列
【汇编语言实战】实现输出集合{1,2,...,n}全排列
29 1
|
3月前
|
C语言
【汇编语言实战】给定一个句子,将大写字母变为小写
【汇编语言实战】给定一个句子,将大写字母变为小写
36 1
|
3月前
|
C语言
【汇编语言实战】最小公倍数和最大公约数
【汇编语言实战】最小公倍数和最大公约数
57 1
|
3月前
|
C语言
【汇编语言实战】二分查找
【汇编语言实战】二分查找
29 1
|
3月前
|
C语言
【汇编语言实战】冒泡排序
【汇编语言实战】冒泡排序
33 1
【汇编语言实战】冒泡排序
|
3月前
|
C语言
【汇编语言实战】解迷宫问题
【汇编语言实战】解迷宫问题
39 2
|
3月前
|
算法 C语言 网络架构
【汇编语言实战】整数拆分问题
【汇编语言实战】整数拆分问题
26 2
|
3月前
|
C语言
【汇编语言实战】基础知识+函数的引用(求1+2+..+N)+OllyDBG的使用
【汇编语言实战】基础知识+函数的引用(求1+2+..+N)+OllyDBG的使用
18 1
|
3月前
|
存储 Unix 编译器
汇编语言----X86汇编指令
汇编语言----X86汇编指令
69 1