2006-12-27 14:25
输入两个数不大于30,有提示 比较两个数字,如果相等,计算和,如果不相等,计算平均值,并且都要以2进制格式输出 按升序输出 计算两个数字各占和的百分比,并且按照“ %”的格式输出(大概如此) 前两个必做,及格。第三个做对是良,第三、第四个做对为优。 在做题时,本人在做输出时浪费了大量时间,现在把二进制输出中本人遇到的问题跟大家分享,幸好我以前做题时一个坛子上的朋友帮我探讨过这种情况。不过当时情况有一点点不一样,所以考试时我还是在这个方面失误。 请看下面语句:
mov cx,0
mov al,80
lop1:shl al,1
jc one
mov dl,‘0’
mov ah,02h
int 21h
jmp next
mov dl,‘1’
mov ah,02h
int 21h
next:
loop
lop1
这是一个输出十进制数80的二进制的的程序段,但是运行时会发现,在loop之后,AL全变成了0,输出的全是0.所以我后来才把数字放在一个事先定好的字节变量上才顺利通过,先后2个小时!同时希望高手能帮我解释一下。
自考365
2018-04-04
自考365
2019-01-01
自考365
2019-11-01