二进制代码和二进制数据有什么不同?

2024-11-20 16:35:46
推荐回答(4个)
回答1:

楼主混淆了表义和表现两者
也就是说,代码和数据的表现都是二进制编码,但是真正的含义(即用途)是不同的
代码和数据的编码都是二进制(计算机中)的,数字本身没有什么区别
但是如果一段二进制编码,从意义层面上来讲具备执行能力,那么就认为是代码
而如果此二进制编码,作为数据被读取并处理,那么就是数据
举个简单的例子就好理解了:
同样的可执行文件exe:如果交给操作系统的程序加载器,它会解析其中的text段,以执行计算机指令,这部分的二进制编码从意义上讲就是你说的二进制代码
但是如果exe被病毒读取,以达到感染的目的,那么病毒会读取text段,并有选择的修改段代码,这时这部分二进制编码对病毒来说就是二进制数据了

回答2:

二进制数是一个数,是以二进制的形式表示的,一个二进制数唯一地表示一个数值。
二进制码是一种编码,用一串二进制符号来表示某个实体(包括数字或字符),也就是为了方便计算机实现,而重新为某物定义了一种计算机能够运算的符号。
你的理解没错,二进制代码可以看成字符串,但是它依然可以按一定的规则进行各种运算。

回答3:

从数据本身而言,没有什么不同,无论二进制代码还是二进制数据都是以“数据的形式”呈现的。但是,对于一个经过编译连接成的最终程序代码,二进制代码和二进制数据还是有区别的:
二进制代码每一个字节都有其特定的含义,代表一特定的指令;
二进制数据则是杂乱无章的数据堆砌。
比如51单片机的一段二进制代码:
02 00 30 代表的意思就是LJMP 0030H。

回答4:

从本质结构上说,这两者没有什么区别,对于一般人来说,也没有什么区别,只是对于搞汇编的人来说,为了便于区分指令和代码,才人为的做了区分。