【汇编语言实战】已知10个整数求最大值

简介: 【汇编语言实战】已知10个整数求最大值

C语言描述该程序流程:


#include <stdio.h>
int main()
{
  int a[]={11,33,23,54,12,51,2,4,34,45};
  int max=a[0];
  for(int i=1;i<=9;i++)
  {
  if(a[i]>=max)
  {
    max=a[i];
  }
  }
  printf("%d",max);
}


汇编语言:

include irvine32.inc
.data
arr dword 11,33,23,54,12,51,2,4,34,45
num dword 9 ;需对比9次
.code
main proc
mov esi,offset arr
mov eax,[esi] ;设第一个元素为最大值
findmax:
cmp num,0
jz output ;如果num为0,则输出(条件为真就跳转)
mov edx,[esi+4] ;下一个数
cmp eax,edx
jge nextnum ;如果该数不比eax大,就继续往下找
mov eax,edx
nextnum:
add esi,4
dec num
jmp findmax
output:
call writeint
main endp
end main



运行结果:




目录
相关文章
|
7月前
|
C语言
【汇编语言实战】实现九九乘法表
【汇编语言实战】实现九九乘法表
63 2
|
7月前
|
C语言
【汇编语言实战】实现输出集合{1,2,...,n}全排列
【汇编语言实战】实现输出集合{1,2,...,n}全排列
46 1
|
7月前
|
C语言
【汇编语言实战】给定一个句子,将大写字母变为小写
【汇编语言实战】给定一个句子,将大写字母变为小写
78 1
|
7月前
|
C语言
【汇编语言实战】最小公倍数和最大公约数
【汇编语言实战】最小公倍数和最大公约数
93 1
|
7月前
|
C语言
【汇编语言实战】二分查找
【汇编语言实战】二分查找
58 1
|
7月前
|
C语言
【汇编语言实战】冒泡排序
【汇编语言实战】冒泡排序
72 1
【汇编语言实战】冒泡排序
|
7月前
|
C语言
【汇编语言实战】解迷宫问题
【汇编语言实战】解迷宫问题
60 2
|
7月前
|
算法 C语言 网络架构
【汇编语言实战】整数拆分问题
【汇编语言实战】整数拆分问题
50 2
|
7月前
|
C语言
【汇编语言实战】基础知识+函数的引用(求1+2+..+N)+OllyDBG的使用
【汇编语言实战】基础知识+函数的引用(求1+2+..+N)+OllyDBG的使用
46 1
|
7月前
|
C语言
【汇编语言实战】对给定的数组实现堆排序
【汇编语言实战】对给定的数组实现堆排序
40 1