汇编语言编写 已知X、Y、Z、MAX为16位的带符号数,求三个数中最大值,结果存入MAX单元.

来源:学生作业学帮网 编辑:学帮网 时间:2024/05/06 19:09:26

汇编语言编写 已知X、Y、Z、MAX为16位的带符号数,求三个数中最大值,结果存入MAX单元.

DATA SEGMENT
X DW 3
Y DW -5
Z DW 1
MAX DW
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
mov ds,ax
MOV AX,X
MOV BX,Y
MOV CX,Z
CMP AX,BX
JGE NEXT
MOV AX,BX
NEXT:CMP AX,CX
JGE NEXT2
MOV AX,CX
NEXT2:MOV MAX,AX
MOV AH,4CH
INT 21H
CODE ENDS
END START

;给你一个类型题让你自己看,差不多的意思,改改就可以了
;数据段中已经定义了一个有N个字数据的数组M,求出M中绝对值
;最大的数,把它放在M+2n单元中,并将该数的偏移地址存放在M+2(n+1)单元中
data segment
M dw 1,4,3,2,-1,-5,-8,-9,'$'
m1 dw 10 dup(?)
disa db 'the ...

全部展开

;给你一个类型题让你自己看,差不多的意思,改改就可以了
;数据段中已经定义了一个有N个字数据的数组M,求出M中绝对值
;最大的数,把它放在M+2n单元中,并将该数的偏移地址存放在M+2(n+1)单元中
data segment
M dw 1,4,3,2,-1,-5,-8,-9,'$'
m1 dw 10 dup(?)
disa db 'the location of M+2n is : $'
disb db 'the location of M+2(n+1)is : $'
disc db 0dh,0ah,24h
data ends
stack segment stack
dw 100 dup(?)
top label word
stack ends
code segment
main proc far
assume ss:stack,cs:code,ds:data
start:mov ax,stack
mov ss,ax
lea sp,top
mov ax,data
mov ds,ax
xor si,si;用来放绝对值最大数的输出
lea bx,M
mov si,bx;记录第一个数的地址
mov cx,0;记录第一个数值假设是0
L1:mov ax,[bx]
cmp ax,24h
je L4
rol ax,1
and ax,1h
cmp ax,1;是负数的话就求原码
je L2
mov ax,[bx];正数的话就直接比较
mov di,0
cmp cx,ax
jbe L3
add bx,2
jmp L1
L2:mov di,1
mov ax,[bx];对负数进行求原码运算
sub ax,1
not ax
cmp cx,ax
jbe L3;记录绝对值比较大的数还有符号
add bx,2
jmp L1
L3:mov cx,ax;改变cx的值
mov si,bx;改变si的地址值
mov dx,di
add bx,2
jmp L1
L4:lea bx,m1
mov [bx-2],cx;M+2n存放绝对值最大的数
mov [bx],si;M+2(n+1)存放他的地址
mov [bx+2],dx;存放他的符号
L5:lea dx,disc;输出换行
mov ah,9
int 21h
lea dx,disa;输出提示语
mov ah,9
int 21h
lea bx,m1
mov dx,[bx+2]
cmp dx,0
je L51
mov dl,'-'
mov ah,2
int 21h
L51:xor si,si
lea bx,m1;把结果地址传给bx
mov si,[bx-2];把结果传给si
mov cx,4
L6:push cx
mov cl,4
rol si,cl
mov dx,si
and dl,0fh
cmp dl,9
jbe L7
add dl,7h
L7:add dl,30h
mov ah,2h
int 21h
pop cx
loop L6
L8:lea dx,disc;输出换行
mov ah,9
int 21h
lea dx,disb;输出提示语
mov ah,9
int 21h
xor si,si
lea bx,m1
mov si,[bx]
mov cx,4
L9:push cx
mov cl,4
rol si,cl
mov dx,si
and dl,0fh
cmp dl,9
jbe L10
add dl,7h
L10:add dl,30h
mov ah,2h
int 21h
pop cx
loop L9

mov ah,4ch
int 21h
main endp
code ends
end start

收起

汇编语言编写 已知X、Y、Z、MAX为16位的带符号数,求三个数中最大值,结果存入MAX单元. 用汇编语言编写一个程序,计算(X*Y-Z)/X的值.其中X,Y,Z均为16位带符号数,要求表达式的计算结果存放在数据段中的RESULT单元中. 微机原理与汇编语言:计算((z+(x*y)-328)-v)/y,其中 x、y、z、v均为带符号1微机原理与汇编语言:计算((z+(x*y)-328)-v)/y,其中 x、y、z、v均为带符号16位,商保存在ax中,余数保存在dx中 ……用汇编语言 用汇编语言编写:x=1,y=2,z=3,计算w=2x+3y-4z往f2812DSP芯片上写的,初学者,麻烦写一般指令就行! 用vb编写一个函数,求3个数中最大数,即max(x,y,z)函数 编写一个求2个数中最大值Max的函数,然后用这个函数求4个数的最大值#includevoid main(){int x,y,z;int max(int a,int b);printf(input two numbers : );scanf(%d%d,&x,&y);z=max(x,y);printf(maxmum=%d ,z);}int max(int a,int b){ 用汇编语言编写程序实现符号函数y=f(x):-128 请编写一个求y=x^2的汇编语言程序,要求采用查表的方式编写 二维随机变量X,Y服从(0,1)均匀分布,求Z=MAX(X,Y)是求Z=MAX(X,Y)分布函数请写出具体步骤 已知实数X.Y.Z满足(Y+Z)分之X+(Z+X)分之Y+(X+Y)分之Z=1,则(Y+Z)分之X平方+(Z+X)分之Y平方+(X+Y)分之Z平方的值为( ) 几道概率论与数理统计问题1.XY相互独立,分布函数Fx(x).Fy(y),则Z=max(X,Y)分布函数为(A)Fx(Z)Fy(Z) (B) Fx(Z)+Fy(Z) (C)max{Fx(Z),Fy(Z)} (D)1-[1-Fx(Z)][1-Fy(Z)]2.XY相互独立 X∽N(μ1,σ1平方) Y∽N(μ2,σ2平方),则Z=X+Y 用汇编语言计算!(x+200)/(y-200)+(z+200)/(x*y) 已知不等式组x-y+2≥0、x+y-4≥0、2x-y-5≤0,又已知z=y-ax(a属于R)中z取max时,唯一最优解为(1,3),求a的范围. 我们将若干个数x,y,z,…的最大值和最小值分别记为max(x,y,z,…)和min(x,y,z,…).已知 a+b+c+d+e+f+g=1,求min[max(a+b+c,b+c+d,c+d+e,d+e+f,e+f+g)]383593161的答案有个问题:不一定要大于a,b,c,d 只要五个相 z=x>y? x : y;什么意思啊13#include int max(int x, int y);main(){ int a,b,ca=7;b=8;c=max(a,b);printf(Max is %d,c);}max(int x, int y){ int z;z=x>y? x : y;return(z) ;}运行结果为:Max is 8这里面有个z=x>y? x : y;不懂,高手解答下. 编写程序计算(A+B*10-D)/C,其中A、B、C、D均为已定义的有符号双字变量,要求商和余数分别存入变量X和Y中用汇编语言编写 已知 x/(y+z)+y/(z+x)+z/(x+y)=1求 (x*x)/(y+z)+(y*y)/(x+z)+(z*z)/(x+y)=? 已知X,Y,Z,A,为自然数,且X〈Y〈Z,求1/X+1/Y+1/Z=A,求X,Y,Z的值.