80x86汇编语言编程:求两个单元中,有多少个对应的位是不同的
来源:互联网 发布:网络摄像机工程宝 编辑:程序博客网 时间:2024/04/29 20:51
编程统计,在BLOCK1、BLOCK2两个单元中,对应的位有多少个是不同的。
题目链接:http://zhidao.baidu.com/question/553072831.html
要想查出不同的位,只需进行两者的异或运算,结果为1的位,对应位就是不同的。
然后,统计一下异或后的结果中,有多少个1,即可。
做而论道编写的程序如下:
;================================
DATA SEGMENT ;数据段
;下面随意的设置两个数据
BLOCK1 DW 2345H ;0010 0011 0100 0101
BLOCK2 DW 5A6BH ;0101 1010 0110 1011
;这两个数据,共有9个位不同
DATA ENDS
;--------------------------------I
CODE SEGMENT ;代码段.
ASSUME CS: CODE, DS: DATA
START:
MOV AX, DATA
MOV DS, AX
;--------------------------------
MOV AX, BLOCK1
XOR AX, BLOCK2
MOV BX, 0
MOV CX, 16 ;判断16位数.
DDDD:
CMP AX, 8000H
JB EEEE
INC BX ;个数加一.
EEEE:
SHL AX, 1 ;左移.
LOOP DDDD ;CX-1,非零转移.
MOV AX, BX
;--------------------------------
DISP: ;以十进制显示AX内容
MOV BX, 10
MOV CX, 0
D_1:MOV DX, 0
DIV BX
ADD DL, '0'
PUSH DX
INC CX
CMP AX, 0
JNE D_1
MOV AH, 2
D_2:POP DX
INT 21H
LOOP D_2
;--------------------------------
MOV AH, 4CH ;到此结束
INT 21H
;--------------------------------
CODE ENDS
END START
;================================
程序运行结果,显示出来:9
这个结果,和数据的特点相吻合。
有兴趣的网友,可以试试其它的数据。
提问者评价:谢谢啦。
- 80x86汇编语言编程:求两个单元中,有多少个对应的位是不同的
- 求两个数的不同位有多少个
- 求两个数的二进制中有多少个不同的bit位
- 求两个数的二进制数的对应位有多少位不同?
- 求两个整型二进制中有多少个不同位
- 求两个数之间有多少个比特位不同
- 求正整数A和正整数B的二进制表示中有多少位是不同的
- 求整数A和整数B的二进制表示中有多少位是不同的?
- C程序:二进制表示中有多少个"1″;二进制表示中有多少位是不同的
- 【位运算】求两个数的二进制有多少位不同
- 求两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同
- 编程实现: 两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
- 编程实现: 两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
- 编程实现: 两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同
- 编程实现:两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
- 编程实现:两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
- .编程实现: 两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
- 求二进制序列中1的个数及奇偶序列+输出整数的每一位+两个数中多少个bit位不同
- 51 单片机的串口通信与控制
- C编程中阻止程序退出的方法
- 80x86汇编语言编程:求素数
- 80x86汇编语言:输入数字,输出对应月份的英文
- GitLab 基本使用说明
- 80x86汇编语言编程:求两个单元中,有多少个对应的位是不同的
- 数字电路:设计《三个开关控制一个灯的电路》
- 51 汇编编程:停留保持的流水灯
- [Linphone Android] 登录实现
- 数字电路:设计《BIN 到 BCD 码的转换电路》
- ArcGIS教程:自然邻域法的工作原理
- 51 汇编编程:一种单片机抢答器
- 51 汇编编程:中断的现场保护与恢复
- C# socket编程实践——简单聊天室