微机课后作业

发布 2022-06-29 08:27:28 阅读 8324

4.9现有符号定义语句如下:

buf db 3, 23, 44, 2, 90

buf2 dw 23, 78

leng equ buf2-buf

则leng表示什么意思,值是多少?如果buf用dw定义,leng值又是多少?

答:字节的长度,10, 如果buf用dw定义,leng值是7

4.11设bx=1103h,则执行下列指令后ax和cx各为多少?若bx=03h,则结果又如何?

mov ax, bx and 0ffh

mov cx, bx eq 1103h

答1)bx=1103h

mov ax,bx and 0ffh ax=0003h

mov cx,bx eq 1103 cx=0ffffh

2)bx=03h

mov ax,bx and 0ffh ax=0003h

mov cx,bx eq 1103h cx=0000h

4.12编写编程段计算下面表达式的值(各变量均为字节变量):

z=((x-y)/10+w)×4

答 mov al,x

sub al,y

cbw mov bl,10

div bl

add al,w

mov bl,4

mul al,bl

mov z,ax

4.14下面程序段是实现从键盘输入10个一位十进数后累加。最后累加和以非压缩bcd码形式存放在ah(高位)和al(低位)中。试把程序段中所空缺的指令填上。

xor bx, bx

mov cx,10

lop: mov ah, 01h; 键盘字符输入。

int 21h

and al,0fh

mov dl, al

mov ax, bx

aaamov bx, ax

loop lop

hlt4.17设a,b是长度为20的字节数组,用串操作指令编写程序实现a,b两组数据的相互交换,试完善本程序。

data segment

a db“abcdefghijklmnopqr”

org 14h

b db1,2,3,4,5,6,7,8,9,0ah,0bh

data ends

lea si,a

lea di,b

mov cx,10

lop1:mov ax,[si]

xchc ax,[di]

mov [si],ax

add di,2

add si,2

loop lop1

hlt4.18将内存中某数据块的正数和负数分开,并分别将这些正数和负数送同一数据段的两个缓冲区中,并在屏幕上显示正数和负数的个数。

答data segment

buf db原数据串。

n = buf

plus db n dup存放正数。

negt db n dup存放负数。

data ends

code segment

assume cs:code,ds:data

start:mov ax,data

mov ds,ax

lea si,buf

lea di,plus

lea bx,negt

mov cx,n

lop: mov al,[si]

inc si

cmp al,0

ja pos

mov [bx],al

inc bx

jmp again

pos: mov [di],al

inc di

again:loop lop

sub bx,offset negt

mov dx,bx

or dl,'0'

mov ah,2

int 21h

sub di,offset plus

mov dx,di

or dl,'0'

mov ah,2

int 21h

mov ah,4ch

int 21h

4.20有子程序定义如下:

sub1 proc

test al, 80h

je plus

test bl, 80h

jne exit0

jmp change

plus: test bl, 80h

je exit0

change:xchg al, bl

exit: ret

sub1 endp

1) 子程序是的功能是什么?

答:当al>0且bl>0时,执行exit0

当al<0且bl<0时,执行exit0

当al>0且bl<0时,执行change

当al<0且bl>0时,执行change

由以上组合归纳可得,当al,bl中的数符号相同时它们各自保持不变,当al,bl中的数异号时交换al,bl中的数据。

2) 如调用子程序前al=88h,bl=97h,那么返回主程序时,al和bl各等于多少?

答由子程序功能可知当al=88h,bl=97h时,al最高位为1,bl最高位为1,均为负数,因此,它们将保持不变。即执行完成后al=88h,bl=97h

4.21 dos中断调用起什么作用?dos中断调用和bios中断调用使用上有什么区别?

答:dos是pc机上最重要的操作系统,它和bios一样包括有近百个设备管理、目录管理和文件管理程序,是一个功能齐全、使用方便的中断例行程序的集合。使用dos操作比使用相应功能的bios操作更简易,而且对硬件的依赖性更少些。

4.24从first开始存放着100个字符的字符串,结束符为“$”编写程序统计该字符串中字母“b”的个数。

mov ax,data;给数据段赋值。

mov ds,ax

lea si,str1;字符串首地址。

mov bl,0;存放统计个数的寄存器赋初值。

loop1:

mov cl,[si];取数据。

inc si

cmp cl,'$看是否是结尾。

je exit ;是,退出。

cmp cl,'a' ;不是结尾,比较是否是‘a’

jne next ;不是'a'比较下一个。

inc bl ;是,统计数加1

next: jmp loop1

exit: mov number,bl;将统计数送往存储区。

mov ah,4ch

int 21h

code ends

end start

微机课后作业

习题一。一 复习题。1.微型计算机控制系统的硬件由哪几部分组成?各部分的作用是什么?2.微型计算机控制系统的软件有什么作用?请说出各部分软件的作用。4.操作指导 ddc和scc系统工作原理如何?它们之间有何区别和联系?9.未来控制系统发展趋势是什么?12.什么是物联网?为什么说 物联网给微型计算机控...

微机课后作业 6

1.1什么是微型计算机系统,它与微型计算机之间的区别是什么?答 是指微型计算机在配以相应的外围设备,以及电源 机箱等硬件基础上,安装必要的软。件构成的系统,这个系统应具有数据处理 数据存取 数据运输等基本功能。区别 微型计算机好比硬件 裸机 不需要外来设备来展现它的存在,而微型计算机系统。相当于软件...

微机五年级课后作业

完成下面的任务,电脑会送给你精美的礼物!1 打开word,单击 插入 菜单栏的 菜单,单击子菜单中的 艺术字 2 在 艺术字 库 对话框中,选择你喜欢的式样,单击 确定 按纽。3 在弹出的 编辑 艺术字 文字 栏中,输入你的 名字 4 选择好 字体 和 字号 单击 确定 按纽,就能得到电脑送给你的精...