微机原理答案

发布 2022-09-04 22:04:28 阅读 5259

1. 试分析下列程序段:

add ax,bx

jnc l2

sub ax,bx

jnc l3

jmp short l5

l2:… l3:…

l5:… 如果ax、bx的内容给定如下:

axbx(1)14c6h80dch

(2)b568h54b7h

问该程序在上述情况下执行后,程序转向何处?

解:1)转向l2

因为(ax)+(bx)没有进位。

2)转向l5

因为(ax)+(bx)= 0a1fh,有进位。然后(ax)-(bx)有进位。

2. 编写程序,使用三种以上的方法,将存储器中ds:2000h开始的地址单元中的节数据复制到es:3000h开始的存储器地址单元中。

解:data segment

org 2000h

d1 db 100 dup(?)

data ends

extra segment

org 3000h

d2 db 100 dup(0)

extra ends

code segment

assume cs:code,ds:data,es:extra

start: mov ax, data

mov ds, ax

mov ax, extra

mov es, ax

lea si, d1

lea di, es:d2

mov cx, 100

l1: mov al, [si]

mov es:[di], al

inc si

inc di

loop l1

rep movsb

hlt1)利用通用传送指令mov

mov si,2000h

mov di,3000h

mov cx,100

aa: mov al,[si]

mov [di],al

inc si

inc di

loop aa

hlt2)利用交换指令xchg

mov si,2000h

mov di,3000h

mov cx,100

aa: mov al,[si]

xchg [di],al

inc si

inc di

loop aa

hlt3)利用换码指令xlat

mov bx,2000h

mov di,3000h

mov cx,100

aa: xor al,al

xlat mov [di], al

inc bx

inc di

loop aa

hlt4)利用堆栈实现数据传送。

mov si,2000h

mov di,3000h

mov cx,50

aa: push [si]

pop [di]

inc si

inc si

inc di

inc di

loop aa

hlt5)利用串操作指令rep movsb

mov si,2000h

mov di,3000h

mov cx,100

clddf=0,si、di自动+1

rep movsb

hlt3. 在da1开始的4个单元中存放着一个32位数,求出其中的“1”的个数,并存入count单元中。

解:data segment

da1 dd 12345678h

count db 00h

data ends

code sengment

assume cs:code,ds:data

start: mov ax, data

mov ds, ax

mov si, offset da1

mov bl, 00h

mov bh, 8

mov cx, 4

a2: mov al, byte ptr [si]

aa: ror al, 1

jnc l1

inc bl

l1: dec bh

jnz aa

inc si

loop a2

mov count, bl

mov ah, 4ch

int 21h

code ends

end start

data segment

data1 db feh,86h,7ch,35h

count db 00h

data ends

stack segment

db 100 dup(?)

stack ends

code segment

assume cs:code,ds:data,ss:stack

start:mov ax,data

mov ds,ax

mov ax,stack

mov si,offset data1

mov bx,[si]

mov dx,[si+2]

mov cx,32

xor al,al

lp1:rcr dx

rcr bx

jnc lp2

inc al

lp2:loop lp1

mov count,al

mov ah,4ch

int 21h

hltp205

1. 下列变量各占多少字节?

a1 dw 23h,5876h4字节。

a2 db 3 dup(?)0ah,0dh6字节。

a3 dd 5 dup(1234h,567890h) 4×2×5=40字节。

a4 db 4 dup(3 dup(1,2,‘abc’))5×3×4=60字节。

5. 对于下面的数据定义,各条mov指令执行后,有关寄存器的内容是什么?

da1 db ?

da2 dw 10 dup(?)

da3 db ‘abcd’

mov ax,type da1

mov bx,size da2

mov cx,length da3

解:各条mov指令执行后,有关寄存器的内容如下:

mov ax,type da1ax)= 1

mov bx,size da2bx)= 20

mov cx,length da3 ;(cx)=1

6. 下段程序完成后,ah等于什么?

in al,5fh

test al,80h

jz l1mov ah,0

jmp stop

l1:mov ah,0ffh

stop:hlt

解:如果地址为5fh的外设输入到al中的数据的最高位=1,则(ah)= 0,否则,(ah)= 0ffh。

13. 将键盘上输入的一位十六进制数转换成十进制数,在屏幕上显示。

data segment

data1 db 00h

data2 db 00h

data ends

code sengment

assume cs:code,ds:data

start: mov ax, data

mov ds, ax

mov ah, 1

int 21h ;输入一个十六进制数0~9,a~f

mov data1, al

cmp al, 40h

jbl1 ;shuzi

sub al, 31h ;10h~15h,a~f的数转换成bcd码。

jmp l2

l1: sub al, 30h ;00h~09h;0~9转换成bcd码。

l2: mov bl, al

and al, 0f0h

mov cl, 4

shr al, cl

add al, 30h;bcd码的高位转换成字符。

mov dl, al

mov ah, 2

int 21h ;显示高位。

and bl, 0fh

add bl, 30h ;bcd码的低位转换成字符。

mov dl, bl

mov ah, 2

int 21h ;显示低位。

mov ah, 4ch

int 21h

code ends

end start

22. 编程序统计学生的数学成绩,分别归类90~99分,80~89分,70~79分,60~69分及60分以下,并将各段的人数送入内存单元中。

解:data segment

data1 db 89,56,78,27,85,…

data2 db 5 dup(0)

data ends

stack segment

db 100 dup(?)

stack ends

code segment

assume cs:code,ds:data,ss:stack

start:mov ax,data

mov ds,ax

mov si,offset data1

mov di,offset data2

mov cx, di-si

zh1:mov al,[si]

cmp al,90

jnl you

cmp al,80

jnl liang

cmp al,70

jnl zhong

cmp al,60

jnl jige

inc 4[di] ;存不及格的人数。

jmp tj5

you:inc [di] ;存优秀人数。

jmp tj5

liang:inc [di+1] ;存良好人数。

jmp tj5

zhong: inc [di+2] ;存成绩为中的人数。

jmp tj5

jige:inc [di+3] ;存及格的人数。

jmp tj5

tj5: inc si

loop zh1

mov ah,4ch

int 21h

code ends

end start

微机原理答案

1.串行通信与并行通信的主要区别是什么?各有优缺点?答 按信息的传送方式可将数据通信分为并行通信与串行通信两种 并行通信 是指利用多条数据传输线将一个数据的各位同时进行传送。特点 传输速度快,适用于短距离通信。串行通信 是指利用一条传输线将数据的各位一位位地顺序进行传送。串行通信又可分为异步通信和同...

微机原理答案

第3章 8086 8088指令系统与寻址方式习题。3 3 8086系统中,设ds 1000h,es 2000h,ss 1200h,bx 0300h,si 0200h,bp 0100h,var的偏移量为0600h,请指出下列指令的目标操作数的寻址方式,若目标操作数为存储器操作数,计算它们的物理地址。1...

微机原理A答案

安徽大学20 11 20 12 学年第 2 学期。微机原理及应用 a卷 考试试题参 及评分标准。一 单项选择题 每小题2分,共20分 1 a2 b 3 a4 c 5 c6 b 7 d8 c 9 c10 b 二 填空题 每空1分,共20分 10000011 ch,e896h,cf 1,of 0,zf ...