标题:朋友考研,有些习题不会做,哪位知道的帮解答一下
只看楼主
whxbb
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-3-27
 问题点数:0 回复次数:0 
朋友考研,有些习题不会做,哪位知道的帮解答一下

1. 已知数组A包含10个互不相等的整数,数组B包含15个互不相等的整数,试编写一程序,将既在A中出现又在B中出现的偶数存放在数组C中,要求:用8088、8086汇编语言设计,请画出程序框图。

2. 写出七进制数4362.56转换为十进制数的表达式___?十进制数68转换为五进制数为___?

3. 中断服务程序中的STI指令目的是___?对于非自动结束方式的中断服务程序,结束时必须设置一条命令是___?

4. 假设某外设的中断类型码为20H,其中断向量地址指针为___?如中断服务程序入口地址为3000:0654H,写出中断向量表对应单元的4个地址___?及数据___?

5. 已知AL的内容为01101011B,执行指令NEG AL后再执行CBW,这时AX中的内容为___?

6. 设NUM为数据段一个变量名,指出执行下面三条指令后SI中的内容:

MOV SI,NUM

LEA SI,NUM

MOV SI,OFFSET NUM

7. 有如下程序段,设寄存器初值(AX)=20BCH,(DX)=45A2H,按下面要求写出连续执行相应指令后寄存器的内容:

MOV CL,04H

SHL DX,CL; (DX)=?

MOV BL,AH

SHL AX,CL; (AX)=?

SHR BL,CL; (BL)=?

XOR DL,BL; (DX)=?

8. 执行下面的程序段后,AX=?

MOV CX,7

MOV AX,50

NEXT:SUB AX,CX

LOOP NEXT

HLT

9. 执行下面的程序段后,AL=?

BUF DW 2152H,3416H,5731H,4684H

MOV BX,OFFSET BUF

MOV AL,4

XLAT

10. 设n为一任意正整数,

(1)此程序完成什么功能?

(2)画出程序流程图

(3)执行此程序后结果是什么?

datarea segment

x dw ?

array_head dw 4,7,12,26,34,42,54,69,85,99

array_end dw 110

n dw 39

datarea ends

program segment

main proc far

assume cs:program,ds:datarea

start:

push ds

sub ax,ax

push ax

mov ax,datarea

mov ds,ax

mov ax,n

mov array_head-2,0FFFFH

mov si,0

compare:

cmp array_end[si],ax

jle insert

mov bx,array_end[si+2],bx

sub si,2

jmp short compare

insert:

mov array_end[si+2],ax

ret

main endp

program ends

end start

11. (1)此程序完成什么功能

(2)画出程序流程图

(3)画出第一次调用子程序sum,执行完语句①时堆栈的情况

(4)当执行到语句②时,对应于上述情况,指出堆栈指针SP的位置

datarea segment

ary1 db 03H,07H,50H,06H,23H,45H,0f6H,0dfH

len1 equ S-ary1

sum1 dw ?

ary2 db 33H,44H,55H,12H,78H,89H,0feH,0cdH

len2 equ S-ary2

sum2 dw ?

data ends

stack segment stack 'stack'

db 100 dup('s')

stack ends

code segment para 'code'

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

sta proc far

push ds

xor ax,ax

push ax

mov dx,data

mov ds,ax

mov ax,len1

push ax

lea ax,ary1

push ax

call sum

mov ax,len2 ②

push ax

lea ax,ary2

push ax

call sum

ret

sta endp

sum proc

push db

mov bp,sp

push ax

push bx

push cx

pushf ①

mov cx,[bp+6]

mov bx,[bp+4]

xor ax,ax

add1: add al,[bx]

adc ah,0

inc bx

loop add1

mov [bx],ax

popf

pop cx

pop ax

pop bp

ret 4

sum endp

code ends

end sta

12. (1)画出程序流程图

(2)该程序完成什么功能?

提示:DOS功能调用01,键盘输入并回显,ASSII码20H:空格

data segment

buffer db 30 dup(?)

flag db ?

data ends

program segment

main proc far

assume cs:program,ds:data

start:

push ds

sub ax,ax

push ax

mov ax,data

mov ds,ax

lea bx,buffer

mov flag,0

next:

mov ah,01

int 21h

test flag,01h

jnz follow

cmp al,20h

jnz exit

mov flag,1

jmp next

follow:

cmp al,20h

jz exit

mov [ax],al; []里看不太清,好像是ax

jnc bx

jmp next

exit:

ret

main endp

program ends

搜索更多相关主题的帖子: 考研 习题 朋友 解答 
2006-03-27 13:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-53118-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.897400 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved