• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

我们说的8位单片机和32位单片机区别是什么

cuiep 2020-01-17 浏览量:4457
8位和32位到底指的是什么位呢
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 按照微机理论的定义,我们所说的8位和32位是指数据总线的宽度是多少位,但是目前也用寄存器的位数来判断一个MCU是32位和8位
    • 发布于 2020-02-12
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:7
  • 这个位指CPU处理的数据的宽度,参与运算的寄存器的数据长度。

    总线宽度​与CPU一次处理的数据宽度相同,则这个宽度就是所说的单片机位数。
    如果总线宽度与CPU一次处理的数据宽度不同:
    1)总线宽度小于CPU一次处理的数据宽度,则以CPU的数据宽度定义单片机的位数,但称为准多少位。比如著名的Intel 8088,CPU是16位但总线是8位,所以它是准16位。
    2)总线宽度大于CPU一次处理的数据宽度,则以CPU的数据宽度定义单片机的位数。
    多少位宽不是指总线宽度,也不是存储器的宽度,像51单片机的地址总线是16位的,但是它是8位机。像ARM的存储器也有八位的,但是它是32位机。而是指CPU处理的数据的宽度,也就是CPU一次数据的吞吐量。比如同一条指令:MOV R0 R2
    在51单片机里面,R0和R2都是8位的,所以51的CPU一次只能处理8位数据。
    在ARM里面,R0和R2是32位的,所以ARM的CPU一次能处理32位数据。这就是区别。
    有啥复杂的, 一句话:参与运算的寄存器的数据长度。
    ​8位单片机的数据总线宽度为8位,通常直接只能处理8位数据;
    32位单片机的数据总线宽度为32位,通常可直接处理8位、16位、32位数据。
    最本质的区别是内部CPU的字长不同,即CPU处理数据的最大位数不同,有8位和32位CPU的区别,你可以认为是ALU、寄存器的字长等。有的32位DSP芯片其外部接口数据总线是32位的,根据这个来判断是不行的
    速度上有区别,取决于CPU、寄存器的字长。8位单片机不能直接处理32位数据,要按照8位数据来处理,要分几个过程来完成。而32位单片机,可直接处理32位数据,因为其ALU,寄存器等都是32位的,可一次完成8位单片机要多步完成的动作,特别是对于数据处理,32位单片机有它的优势。而且32位单片机大多数据接口都为32位。

    • 发布于2020-01-18
    • 举报
    • 评论 0
    • 0
    • 0

  • 运算单元(ALU)的位数,就是参数ALU运算的数据的最大宽度  。
    • 发布于2020-01-18
    • 举报
    • 评论 0
    • 0
    • 0

  • 寄存器的位数不一样,内部蝗总线位不一样。架构不一样的
    • 发布于2020-01-19
    • 举报
    • 评论 0
    • 0
    • 0

  • 8位单片机指的是它的数据总线宽度为8位,32位单片机数据总线宽度为32位
    • 发布于2020-01-19
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个要看情况,一般关键是由总线宽度或数据宽带决定。

    不过现在一般8位单片机是总线宽度为8位,且直接处理8位宽数据的CPU系统。32位单片机是总线宽度为32位,且最高直接处理32位宽数据的CPU系统。

    • 发布于2020-01-22
    • 举报
    • 评论 0
    • 0
    • 0

  • 一条指令的操作位数,8位一次只能操作8位数据,32位操作32位数据,时钟相同的情况下,32位比8位快4倍
    • 发布于2020-02-02
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

我们说的8位单片机和32位单片机区别是什么