汇编语言程序设计高手进

来源:百度知道 编辑:UC知道 时间:2024/06/01 05:38:10
希望哪位大虾能帮我做一下!~正确率高再追加分。谢谢

1.假定(DX)=10111001B,(CL)=0.3,(CF)=1,试确定下列各条指令单独执行后,DX中的值。
(1)SHR DX,1
(2)RCR DL,1
(3)RCL DX,CL
2.写出完成下述功能的程序段:
(1)传送25H到AL寄存器
(2)将AL的内容乘以2
(3)传送15H到BL寄存器
(4)AL的内容乘以BL的内容
并请写出最后(AX)=?
3、现有如下程序段:
DATA SEGMENT DA3 EQU 1234H
ORG 0020H DA4 EQU $-DA2
DA1 DW 12H,23H DA5 DB 31H,32H
DA2 DB 11H,21H DATA ENDS
请回答:(1)该程序段已占有的存储字节数是多少?
(2)符号名DA4的值是多少?符号名DA5的值是多少?
4、执行下列程序段后,回答问题。
ORG 1221H MOV BX,OFFSET NUM
NUM DW 12H MOV CL,BYTE PTR NUM+1
… MOV CH,TYPE NUM
MOV AX,NUM HLT
请问:(AX)=______,(BX)=______,(CX)=______。
5、阅读如下程序:
ADRR DB XXH,XXH,……,XXH CMP ADRR[BX],0
NUM EQU $ -ADRR LOOPZ DON
RETT DB? JNZ NEXT
… MOV BL,OFFH
MOV CX,NUM NEXT:MOV RETT,BL
MOV BX,-1 HLT
DON:INC BX
请问:(1)该程序完成的功能是什么?
(2)程序执行后指出RETT字节单元中的内容是什么?
6、在表TABLE处存放着N个无符号字节数,求表中前10个字节数的总和并保存在AX寄存器中。如果总和值超过AX寄存器的容量,则置AX寄存器内容不变。请在程序中的空格处填入适当指令使

说实话给你做完真不容易,你发的代码是两列两列发的,看着很麻烦
1、
(1)0101 1100
(2)1011 1100
(3)0111 0011
2、
(1)mov al,25h
(2) mov bl,2
mul bl
(3)mov bl,15h
(4)mul bl
ax=0612h
3、
(1)11个字节
(2)DA4的值是2
(3)不明白什么意思
4、
(1)ax=num的段地址
(2)bx=num的便宜地址
(3)不会
5、(1)功能是:找出ADRR数据中不等于0的数
(2)如果ADRR中有不等于0的数则RETT为那个数,否则为0FFH
6、
(1)add ax,[bx]
(2) adc ah,0
(3) loop mext
7、
(1) add di,99
(2) xchg [di],al
(3) inc si
8、
近转移SP+2
远转移SP+4

作业还是自己做的比较容易掌握知识.

还是自己做的比较好