编写一个程序,使寄存器BL中的高4位与低4位互换

用汇编语言
给个全不的,

下面程序,在DEBUG里面执行通过,能够完成你的要求:

MOV BL,12
MOV AH,BL
MOV AL,BL
MOV CL,04
SHR AL,CL
SHL AH,CL
OR AH,AL
MOV BL,AH
INT 3

注意DEBUG里面所有常数都是16进制,你的汇编程序里面应该用04H,第一行的12H是我增加的测试,最后程序执行以后BL为21H
温馨提示:内容为网友见解,仅供参考
无其他回答

编写一个程序,使寄存器BL中的高4位与低4位互换
MOV BL,12 MOV AH,BL MOV AL,BL MOV CL,04 SHR AL,CL SHL AH,CL OR AH,AL MOV BL,AH INT 3 注意DEBUG里面所有常数都是16进制,你的汇编程序里面应该用04H,第一行的12H是我增加的测试,最后程序执行以后BL为21H ...

编写一个程序,使寄存器BL中的高4位与低4位互换.
COD SEGMENT ASSUME DS:DAT CS:COD MAIN PROC FAR PUSH DS SUB AX,AX PUSH AX MOV AX,DAT MOV DS,AX MOV CL 4 ROR BL CL RET COD ENDS END MAIN

汇编BL中高4位和低4位内容互换
MOV BH,BL ;需借用BH寄存器,先复制BL值 MOV CL,4 ;CL为移位次数 SHR BH,CL ;移位后BH内为原来的高4位移到了低4位 SHL BL,CL ;移位后BL内为原来的低4位移到了高4位 OR BL,BH ;合并,结果在BL中

汇编:编写一个程序,使寄存器BL中的高四位与低四位互换(详细代码)
mov bl,ch mov bh,cl 大概意思就是用通用寄存器CX来储存BX中的数据。然后在BL和BH中 ,高八位和第八位 互调。

...1) 使BL寄存器的高低4位互换? (2) 将AL寄存器的低4位取反,其他位...
大概思路。1,把bl送入寄存器A中,左移四位后送入B中,在将A右移四位,A,B相加即可。

用C语言写一个使单片机P3口高四位LED和低四位LED轮流点亮的程序。
LZ 的所谓 高4位 与 低4位 轮流点亮,是指 高4位 一起亮,然后换 低4位 一起亮吗?如果是,那主函数应该是:void main(){ P3=0x0f;while(1){ P3=~P3;delay();} } 至于LZ出现的问题,那是因为 LZ 的每一行 赋值,都改变了原来的灯,导致到最后(延时函数之前)只有一个灯是亮的,2...

...1.将寄存器al中的高4位取反,低4位置1(清0) 2.清除ax的内容,同时清除...
1.XOR AL,0F0H OR AL,0FH 2.XOR AX,AX

假设BL寄存器中的低4位不变,高4位取反,使用什么指令
答案:XBR BL,OFH XOR指令通常用于将操作数的某些位取反。如:XOR AL,0FH ;AL的低4位取反,高4位保持不变

MCS-51单片机,逻辑与和高低位指令SWAP的问题?
情况一:假如你要将A的高四位和另一个4位(0000$%&@)的数作比较,那就应该选用上面程序那样,使用SWAP。因为你直接把低4位屏蔽而直接取高4位,这样的结果是A=***0000,其中前面的4位星是代表你原来A中的高4位。但要比较一个数,不能是0000***与另一个数0000$%&@比较,而应该是0000***...

树莓派基础实验32:DS1302实时时钟模块实验
此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读\/写除充电寄存器以外的寄存器。   DS1302的一条指令一个字节8位,其中第7位(即最高位)是固定1,这一位如果是0的话,那写进去是无效的。第6位是选择RAM还是CLOCK的,这里主要讲CLOCK时钟的...

相似回答