哪位高手麻烦讲解一下casl的题目,尤其是第四空,有分送
第四空到底用AND,OR 还是 EOR?
问题点数:20、回复次数:7Top
1 楼jtjl(醉里挑凳看片,梦回吹牛连赢!)回复于 2001-10-14 19:48:58 得分 0
我想用EOR 就可以了
因为一个数即然是被编过码的
就不存在第8位是1的情况了
那么同1000000按位加
是可以达到把第8位变1,而其它位不变的功能的Top
2 楼yunhe(费戈)回复于 2001-10-14 20:00:30 得分 0
我想是 OR GR0,V0,GR3 吧~!
因为,第三个空,我填了 EOR GR3,1
不知是否正确?Top
3 楼bluerain2000(蓝色雨点)回复于 2001-10-14 20:16:22 得分 0
试题三:
1. LD GR0,0,GR1
2. JZE GOON
3. EOR GR3,1
4. ADD GR0,V1,GR3
5. JNZ LOOP
Top
4 楼wyboalone(wybo)回复于 2001-10-14 20:18:26 得分 0
我用的orTop
5 楼run(一路狂奔)回复于 2001-10-14 20:56:39 得分 0
第三空用 EOR GR3,1 或许不行呢,因为在casl中这条指令可能是错的.
应该用 EOR GR3,V1
Top
6 楼tendant(tendant)回复于 2001-10-14 21:00:31 得分 0
我的标准答案
casl题:
1. LD GR0,0,GR1
2. JZE GOON
3. EOR GR3,V1
4. OR GR0,V0,GR3
5. JNZ LOOP
Top
7 楼greensword()回复于 2001-10-14 21:22:23 得分 20
第三空:EOR GR3,V1
第四空:OR GR0,V0,GR3
第三空用1应该是不行的,这个参数表示的是一个地址。
第四空是对字符进行处理,如果是ASCII字符则不管,是汉字字符则置高位为1,
V0 0
#0080
当字符为ASCII码时,GR3为0,汉字则为,用这个通用寄存器表示当前字符是否为汉字,
再进行相应处理,用OR GR0,V0,GR3,则将V0的地址加上GR3,再用这个地址取出的数
和GR0中的数进行或操作,根据二进制的位运算规则,取出的若是0(ASCII),则GR0
中的字符不变,若是#0080(汉字,二进制是0000000010000000,CASL中字符只用后八
位),则GR0中字符的高位被置一。这样就达到了目的。
写得有点乱,有不是之处,请各位指正!Top




