首页 > 试题广场 >

下面有关计算机基本原理的说法中,正确的一项是:()

[单选题]

下面有关计算机基本原理的说法中,正确的一项是:()

  • 堆栈(stack)在内存中总是由高地址向低地址方向增长的。
  • 发生函数调用时,函数的参数总是通过压入堆栈(stack)的方式来传递的。
  • 在64位计算机上,Python3代码中的int类型可以表示的最大数值是2^64-1。
  • 在任何计算机上,Python3代码中的float类型都没有办法直接表示[0,1]区间内的所有实数。
A:Intel中规定,栈是从高地址向低地址生长的;堆是由低地址向高地址增长的。ARM就没有规定的很死,可以选择栈是升序还是降序。

B:
x64下面在x64下函数调用的前4个参数总是放在寄存器中传递,剩余的参数则压入堆栈中。而x86上则是全部压入堆栈中(除了fastcall方式)。这4个用于存放参数的寄存器分别是:存放整数参数的RCX,RDX,R8,R9;存放浮点数参数的XMM0,XMM1,XMM2,XMM3。

C:
  • 在32位机器上,整数的位数为32位,取值范围为-231~231-1,即-2147483648~2147483647
  • 在64位系统上,整数的位数为64位,取值范围为-263~263-1,即-9223372036854775808~9223372036854775807

D:
只要知道,计算机里的浮点类型只是一种用离散方式近似表达实数区间的方法,就可以知道,Python 里的 float 是不可能涵盖 [0,1] 区间内的所有实数的。即,只是---近似---表示,不是真正的能表达实数区间。
发表于 2019-04-13 15:21:13 回复(3)
区间之间数是连续的有无穷个实数,而计算机只能表示离散的确定的实数,这是一道数学问题吧!
发表于 2019-04-03 21:10:41 回复(0)
虽然有64位,但是只能用63位啊,因为int类型有符号。
发表于 2022-08-01 21:20:43 回复(1)
Python3代码中的int类型没有限制了,所以没有可以表示的最大值,但是提供了sy***axsize来表示一个大于任何我们实际工作中能够表示的最大的整型数值
发表于 2019-05-17 18:31:15 回复(0)
A:Intel中规定,栈是从高地址向低地址生长的;堆是由低地址向高地址增长的。ARM就没有规定的很死,可以选择栈是升序还是降序。

B:
x64下面在x64下函数调用的前4个参数总是放在寄存器中传递,剩余的参数则压入堆栈中。而x86上则是全部压入堆栈中(除了fastcall方式)。这4个用于存放参数的寄存器分别是:存放整数参数的RCX,RDX,R8,R9;存放浮点数参数的XMM0,XMM1,XMM2,XMM3。

C:
  • 在32位机器上,整数的位数为32位,取值范围为-231~231-1,即-2147483648~2147483647
  • 在64位系统上,整数的位数为64位,取值范围为-263~263-1,即-9223372036854775808~9223372036854775807

D:
只要知道,计算机里的浮点类型只是一种用离散方式近似表达实数区间的方法,就可以知道,Python 里的 float 是不可能涵盖 [0,1] 区间内的所有实数的。即,只是---近似---表示,不是真正的能表达实数区间。
发表于 2022-06-29 16:35:06 回复(0)
D项解析:
实数,是有理数和无理数的总称。整数和分数统称有理数,小数分为有限小数,无限循环小数,无限不循环小数(即无理数),其中有限小数和无限循环小数均能化为分数,所以小数即为分数和无理数的集合。
在计算机领域,由于计算机只能存储有限的小数位数,实数经常用浮点数来表示。
区间之间数是连续的有无穷个实数,而计算机只能表示离散的确定的实数。
发表于 2023-03-03 21:30:37 回复(0)
一个志杰等于8比特,整型占4志杰空间
发表于 2022-05-29 00:28:51 回复(0)
无法表达Π,圆周率。
发表于 2019-04-11 11:24:44 回复(1)
双精度浮点数数据类型,单精度值由4个bety组成,包括1位符号位,8位二进制位,23位尾数。
发表于 2023-03-01 08:31:43 回复(0)
表示不了无理数
发表于 2022-09-22 23:20:37 回复(0)
D理解为,实数是不可列的
发表于 2022-04-02 14:41:15 回复(0)