汇编程序:求最大数

2024-03-03 06:08
文章标签 最大数 汇编程序

本文主要是介绍汇编程序:求最大数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【任务】求最大数
  在BUFFER处给出了多个无符号数,请找出其中的最大值,放至MAX指定的存储单元中。

data  segmentbuffer dw 35098, 17758, 54582, 61504, 46054, 58513, 4409, 7902, 14255dw 40623, 47645, 15575, 51572, 18110, 26511, 14880, 5921, 31999dw 2893, 21056, 16574, 147, 25532, 33336, 5251, 64269, 31514, 23670dw 53335, 49581, 57895, 25689, 51697, 58198, 27548, 54151, 41373dw 44382, 23511, 39326, 56955, 51911max dw  ?
data  ends

  已知标号为BUFFER的数组后直接就是标号为MAX的单元,数组中元素的个数由程序计算,不得人工数。给定的数据中,最大者为64269(FB0DH)。

【参考解答】

assume cs:code,ds:data
data  segmentbuffer dw 35098, 17758, 54582, 61504, 46054, 58513, 4409, 7902, 14255dw 40623, 47645, 15575, 51572, 18110, 26511, 14880, 5921, 31999dw 2893, 21056, 16574, 147, 25532, 33336, 5251, 64269, 31514, 23670dw 53335, 49581, 57895, 25689, 51697, 58198, 27548, 54151, 41373dw 44382, 23511, 39326, 56955, 51911max dw  ?
data  ends
code  segmentstart: mov ax, datamov ds, axmov cx, offset max - offset buffershr cx, 1      ;对字型数据,数据个数是单元数的一半lea bx, buffermov ax, [bx]   ;先设第一个为最大inc bxinc bxdec cxagain: cmp ax, [bx]jae nextmov ax, [bx]next:inc bxinc bxloop againmov max, axmov ax, 4c00hint 21hcode  endsend   start

这篇关于汇编程序:求最大数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/768689

相关文章

【LeetCode】321. 拼接最大数(贪心+单调栈类型题)

在做帆软笔试的时候,最后一道题一直没想出来。 题目:在两个数组中选取 k 个元素,拼接一个最小数,并且要保证来自同一数组的元素顺序不发生改变。 搜索后发现是 LeetCode 321 拼接最大数的变形题,借此题学习一下。 402. 移掉 K 位数字(中等) 402. 移掉 K 位数字 给定一个以字符串表示的非负整数 num,移除这个数中的 k 位数字,使得剩下的数字最小。 注意: n

汇编语言03——第一个汇编程序

整理自鱼C论坛课件 汇编程序编写步骤 编写源代码->使用MASM.exe进行编译,产生目标文件->用LINK.exe,对目标文件进行链接,生成可执行文件 可执行文件中包含两部分内容 1,程序和数据 2,相关的描述信息(程序有多大,要占用多少内存空间等) 源程序: assume cs:abc abc segment mov ax,2 add ax,ax add

C++类实现最大数的输出

Description 判断整数的大小,输入n个数,找出最大的数并输出。 Input 有多组测试实例,输入n,并输入n个数。 Output 输出的最大的数,每个输出结果占一行。 Sample Input 101 2 3 4 5 6 7 8 9 10 Sample Output 10 #include<iostream>#inc

HYSBZ 1012 最大数maxnumber

思路:在单调队列不更新列首,因为查询区间大小不确定,所以不能保证下次是否还用到它 #include <cstdio>#include <cstring>#include <algorithm>using namespace std;#define N 222222#define ll long longint que[N];ll m,d;ll a[N];int cnt;ch

C语言 | Leetcode C语言题解之第179题最大数

题目: 题解: long cmp(int *x, int *y) {unsigned long sx = 10, sy = 10;while (sx <= *x) {sx *= 10;}while (sy <= *y) {sy *= 10;}return sx * (*y) + (*x) - sy * (*x) - (*y);}char *largestNumber(int *nums,

Python | Leetcode Python题解之第179题最大数

题目: 题解: class Solution:def largestNumber(self, nums: List[int]) -> str:def quick_sort(l , r):if l >= r: returni, j = l, rwhile i < j:while strs[j] + strs[l] >= strs[l] + strs[j] and i < j: j -= 1w

C++ | Leetcode C++题解之第179题最大数

题目: 题解: class Solution {public:string largestNumber(vector<int> &nums) {sort(nums.begin(), nums.end(), [](const int &x, const int &y) {return to_string(x) + to_string(y) > to_string(y) + to_strin

Golang | Leetcode Golang题解之第179题最大数

题目: 题解: func largestNumber(nums []int) string {sort.Slice(nums, func(i, j int) bool {x, y := nums[i], nums[j]sx, sy := 10, 10for sx <= x {sx *= 10}for sy <= y {sy *= 10}return sy*x+y > sx*y+x})if

Java | Leetcode Java题解之第179题最大数

题目: 题解: class Solution {public String largestNumber(int[] nums) {int n = nums.length;// 转换成包装类型,以便传入 Comparator 对象(此处为 lambda 表达式)Integer[] numsArr = new Integer[n];for (int i = 0; i < n; i++) {nu

《汇编语言程序设计》例子之查找最大数

以下是第5章中讲到的 CMOV 的指令的例子,原来的源码是这样的: # cmovtest.s - An example of the CMOV instructions.section .dataoutput:.asciz "The largest value is %d\n"values:.int 105, 235, 61, 315, 134, 221, 53, 145,