试编写一个子程序统计八位二进制数中有几个取值为“1”的位。另编写一个程序,利用这个子程序,统计数组BINX各元
ORG 10H
BINX:DB 28,150,45,90
DB 160,99,210,63
NIIN EOU $-BINX
BITN: DS NUM
ORG 10H
BINX:DB 28,150,45,90
DB 160,99,210,63
NIIN EOU $-BINX
BITN: DS NUM
第1题
(1)子程序入口地址(标号):BINCHR;
(2)入口参数:AL=8位二进制数;
DI=ASCII数字串首地址(位于数据段中);
(3)出口参数:无;
(4)不影响其他寄存器。
第2题
试编写一个子程序,判断寄存器AR中有符号数(补码)的正负,并按以下要求设置标志CF、ZF的状态(要求:子程序执行不能破坏AR的内容)。
第3题
试编写一个取多字节数据绝对值的子程序。已知该子程序的出入口参数是:
入口参数:IX=多字节数据首地址、BR=数据长度(字节数)。
出口参数:-。
第4题
试编子程序,统计AX中二进制位是“1”的位数。已知:
入口参数:AX=16位二进制数。
出口参数:BL=统计结果。
第5题
在A址起有10个压缩型BCD数。
(1)将BCD数转为相应的ASCⅡ码。
(2)将ASCⅡ码在屏幕上显示。
试编写子程序及调用程序。
第6题
试编写一个子程序,完成交换寄存器AR和BR内容的操作(要求:子程序执行不能影响其他寄存器)。
第7题
试编写一个判断某字符是否为数字字符的子程序。已知子程序的出入口参数是:
入口参数:AR=字符。
出口参数:是数字字符CF=0,否则CF=1。
第8题
试编写一个奇偶校验子程序。已知该子程序的出入口参数是:
入口参数:AR=数据。
出口参数:若AR中为奇数个“1”CF=1,否则CF=0。
第10题
试编写一个有符号数比较子程序。已知子程序的出入口参数是:
;入口参数:AR=有符号数x、IX=符号数y的地址
;出口参数:CF=0、zF=0 (x>y);
; CF=0、ZF=1 (x=y);
; CF=1、ZF=0 (x<y)。
第11题
试编写一个工作在16位空间的486段内调用子程序,完成找出有符号字数组中最大数的操作。要求:
(1)子程序入口地址(标号):MAX;
(2)入口参数:SI=字数组首地址(位于数据段中);
CX=字数组元素个数;
(3)出口参数:AX=最大数;