请问高手,谢谢! 1.下列程序段完成的功能是 。 MOV CL,04 SHR AX,CL MOV BL,DL SHR DX,CL SHL BL,CL OR AH,BL 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 什么东西?和java有关啊? 看来我菜的很哦,没看懂什么意思 MOV CL,04 SHR AX,CL MOV BL,DL SHR DX,CL SHL BL,CL OR AH,BL这是汇编语言,先去学习其基础知识吧,不过汇编比较难学,指令多(什么寻址方式啊,记不得啦,大学学过),基本上类似机器指令,执行效率相当高。 纯baidu来的,给大家解解闷:mov cl,4 ;把十进制4赋给clshr ax,cl ;ax算术右移4位,例子:若ax=1010101110111010,则运算有ax=0000101010111011mov bl, dl ;把dl的值给blshr dx,cl ;dx算术右移4位shl bl,cl ;bl 算术左移4位or ah ,bl ;ah和bl或运算,如上ax的值,则ah=00001010,设bl=10101000,则结果ah=10100010我想这段代码的本来目的是将DX:AX中的双字数“右”移4位 http://wenwen.soso.com/z/q141558754.htm但他跟里面这位仁兄貌似犯了同样的错误……就是最后的or ah,bl(此时ah的高四位算术右移后均为0,所以这里也等于mov ah,bl)因为ah,bl是8位的,所以这里并不能实殃mov ah,bl的功能……本来他的目的是dx没移动前的低4位跟ax移动后的高4位(算术移动高4位全0)与或运算,也即是mov ah,bl所以这串代码不能实现什么……跟里面的那位仁兄犯了同样的错误……要实现移位操作,可以按下面写的实现…… mov cx,4next:shl dx,1;逻辑左移1位,低位赋0shl ax,1jz jump;判断,ax最高位移置CF,否判是否为0xor dx,1;CF为1,即ax最高位为1,所以dx最低位赋1jump:loop next 纯baidu来的,给大家解解闷: mov cl,4 ;把十进制4赋给cl shr ax,cl ;ax算术右移4位,例子:若ax=1010101110111010,则运算有ax=0000101010111011 mov bl, dl ;把dl的值给bl shr dx,cl ;dx算术右移4位 shl bl,cl ;bl 算术左移4位 or ah ,bl ;ah和bl或运算,如上ax的值,则ah=00001010,设bl=10101000,则结果ah=10100010 我想这段代码的本来目的是将DX:AX中的双字数“右”移4位 http://wenwen.soso.com/z/q141558754.htm但他跟里面这位仁兄貌似犯了同样的错误……就是最后的or ah,bl(此时ah的高四位算术右移后均为0,所以这里也等于mov ah,bl)因为ah,bl是8位的,所以这里并不能实殃mov ah,bl的功能……本来他的目的是dx没移动前的低4位跟ax移动后的高4位(算术移动高4位全0)与或运算,也即是mov ah,bl所以这串代码不能实现什么……跟里面的那位仁兄犯了同样的错误……要实现移位操作,可以按下面写的实现…… mov cx,4 next: shl dx,1;逻辑左移1位,低位赋0 shl ax,1 jz jump;判断,ax最高位移置CF,否判是否为0 xor dx,1;CF为1,即ax最高位为1,所以dx最低位赋1 jump: loop next 我的SSH中,为什么老是说找不到文件啊???T.T求指教 西安:找人 一起去学习JAVA(经过朋友介绍找到一般比较牛的JAVA老师) 关于正版weblogic用户数的问题 请教一个算法 Weblogic中,JSP调用EJB问题 spring +ibatis 在数据库操作时,如何描述一对一,一对多的关系! 跪求tomcat配置jsp文件 有没有什么办法,能让Web Service主动的向客户端发送些数据? 急切求助! 关于package、import的小问题 关于MyEclipse中DataBase Driver的设置问题 一道看似简单的java面试题
和java有关啊?
看来我菜的很哦,没看懂什么意思
SHR AX,CL
MOV BL,DL
SHR DX,CL
SHL BL,CL
OR AH,BL
这是汇编语言,先去学习其基础知识吧,不过汇编比较难学,指令多(什么寻址方式啊,记不得啦,大学学过),基本上类似机器指令,执行效率相当高。
mov cl,4 ;把十进制4赋给clshr ax,cl ;ax算术右移4位,例子:若ax=1010101110111010,则运算有ax=0000101010111011mov bl, dl ;把dl的值给blshr dx,cl ;dx算术右移4位shl bl,cl ;bl 算术左移4位or ah ,bl ;ah和bl或运算,如上ax的值,则ah=00001010,设bl=10101000,则结果ah=10100010
我想这段代码的本来目的是将DX:AX中的双字数“右”移4位 http://wenwen.soso.com/z/q141558754.htm但他跟里面这位仁兄貌似犯了同样的错误……就是最后的or ah,bl(此时ah的高四位算术右移后均为0,所以这里也等于mov ah,bl)因为ah,bl是8位的,所以这里并不能实殃mov ah,bl的功能……本来他的目的是dx没移动前的低4位跟ax移动后的高4位(算术移动高4位全0)与或运算,也即是mov ah,bl所以这串代码不能实现什么……跟里面的那位仁兄犯了同样的错误……要实现移位操作,可以按下面写的实现…… mov cx,4
next:
shl dx,1;逻辑左移1位,低位赋0
shl ax,1
jz jump;判断,ax最高位移置CF,否判是否为0
xor dx,1;CF为1,即ax最高位为1,所以dx最低位赋1
jump:
loop next
mov cl,4 ;把十进制4赋给cl shr ax,cl ;ax算术右移4位,例子:若ax=1010101110111010,则运算有ax=0000101010111011 mov bl, dl ;把dl的值给bl shr dx,cl ;dx算术右移4位 shl bl,cl ;bl 算术左移4位 or ah ,bl ;ah和bl或运算,如上ax的值,则ah=00001010,设bl=10101000,则结果ah=10100010
我想这段代码的本来目的是将DX:AX中的双字数“右”移4位 http://wenwen.soso.com/z/q141558754.htm但他跟里面这位仁兄貌似犯了同样的错误……就是最后的or ah,bl(此时ah的高四位算术右移后均为0,所以这里也等于mov ah,bl)因为ah,bl是8位的,所以这里并不能实殃mov ah,bl的功能……本来他的目的是dx没移动前的低4位跟ax移动后的高4位(算术移动高4位全0)与或运算,也即是mov ah,bl所以这串代码不能实现什么……跟里面的那位仁兄犯了同样的错误……要实现移位操作,可以按下面写的实现…… mov cx,4
next:
shl dx,1;逻辑左移1位,低位赋0
shl ax,1
jz jump;判断,ax最高位移置CF,否判是否为0
xor dx,1;CF为1,即ax最高位为1,所以dx最低位赋1
jump:
loop next