高手求助关于微机原理的实验报告,汇编语言的。。。高手高手快来。。。 50
设字节单元N1、N2中存放无符号数,(1)若两个均是偶数,则分别加1后送D1、D2中;(2)若两个均是奇数,则直接送D1、D2中;(3)若一个是奇数,一个是偶数,则把奇数...
设字节单元N1、N2中存放无符号数,(1)若两个均是偶数,则分别加1后送D1、D2中;(2)若两个均是奇数
,则直接送D1、D2中;(3)若一个是奇数,一个是偶数,则把奇数送D1,偶数送D2中。 展开
,则直接送D1、D2中;(3)若一个是奇数,一个是偶数,则把奇数送D1,偶数送D2中。 展开
2个回答
展开全部
;若只比较两个数(16位且不大于65534)程序可如下
data segment
d1 db 20 dup(?)
d2 db 20 dup(?)
d3 db 45,……;N1中存放的数
d4 db 65,……;N2中存放的数
data ends
stack segment
sta db 20 dup(?)
top equ length sta
stack ends
code segment
assume cs:code,ds:data,ss:stack
start: mov ax,data
mov ds,ax
mov ax,stack
mov ss,ax
mov ax,top
mov sp,ax
mov ax,d3;取N1中的数
mov bx,ax
mov dx,d4;取N2中的数
mov cx,dx
and al,01h;看N1最低位是否为1,是则为奇数,否则为偶数
and dl,01h;看N2最低位是否为1,是则为奇数,否则为偶数
mov ah,al
mov dh,dl
and al,dl
jnz jiji;两个都为奇数al必不为0(为01)
mov al,ah
mov dl,dh
or al,dl
jz ouou;两个都为偶数al必陪桥慧为0
cmp ah,dh;若程序有执行到此,必为一奇一偶
jc jiou;N1中的为偶数,N2的为奇数则跳至jiou
mov d1,cx;奇消腔数送d1
mov d2,bx;偶数送d2
jiji: mov d1,bx
mov d2,cx
ouou: inc bx
inc cx
mov d1,bx
mov d2,cx
jiou: mov d1,bx;奇数送d1
mov d2,cx;偶数送d2
code ends
end start
;当然上述编程还可以采用将N1和N2进行右循环移位,用判断cf是否为0的方法来判断奇数还是偶数。具体方法你可以自己试下。
;若是还要继续比较N1,N2两单元之后的数可以将其中的一个首地址赋给si,然后利用循环,每经过一个循环si加1,采用循环的方法比较(当然此时不能将cx再存放其他数据,只能存放循环计数值芦答),方法与上述两个数比较类似。
data segment
d1 db 20 dup(?)
d2 db 20 dup(?)
d3 db 45,……;N1中存放的数
d4 db 65,……;N2中存放的数
data ends
stack segment
sta db 20 dup(?)
top equ length sta
stack ends
code segment
assume cs:code,ds:data,ss:stack
start: mov ax,data
mov ds,ax
mov ax,stack
mov ss,ax
mov ax,top
mov sp,ax
mov ax,d3;取N1中的数
mov bx,ax
mov dx,d4;取N2中的数
mov cx,dx
and al,01h;看N1最低位是否为1,是则为奇数,否则为偶数
and dl,01h;看N2最低位是否为1,是则为奇数,否则为偶数
mov ah,al
mov dh,dl
and al,dl
jnz jiji;两个都为奇数al必不为0(为01)
mov al,ah
mov dl,dh
or al,dl
jz ouou;两个都为偶数al必陪桥慧为0
cmp ah,dh;若程序有执行到此,必为一奇一偶
jc jiou;N1中的为偶数,N2的为奇数则跳至jiou
mov d1,cx;奇消腔数送d1
mov d2,bx;偶数送d2
jiji: mov d1,bx
mov d2,cx
ouou: inc bx
inc cx
mov d1,bx
mov d2,cx
jiou: mov d1,bx;奇数送d1
mov d2,cx;偶数送d2
code ends
end start
;当然上述编程还可以采用将N1和N2进行右循环移位,用判断cf是否为0的方法来判断奇数还是偶数。具体方法你可以自己试下。
;若是还要继续比较N1,N2两单元之后的数可以将其中的一个首地址赋给si,然后利用循环,每经过一个循环si加1,采用循环的方法比较(当然此时不能将cx再存放其他数据,只能存放循环计数值芦答),方法与上述两个数比较类似。
武汉多贝斯特
2024-10-09 广告
2024-10-09 广告
实验台对于实验室而言,是其核心组件之一,承载着实验室日常工作的核心任务。它不仅是实验操作的平台,更是科学研究和技术创新的基地。首先,实验台提供了稳定的工作空间。在进行各类实验时,无论是化学分析、物理测量还是生物实验,都需要一个稳定、平整的台...
点击进入详情页
本回答由武汉多贝斯特提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询