terminology - Why are BigInt chunks-of-bits called "limbs"? - Stack Overflow

I've come across multiple sources that use the word "limb" to refer to a chunk of an arb

I've come across multiple sources that use the word "limb" to refer to a chunk of an arbitrary-sized integer. I can understand why "digit" and "word" aren't great names for this, but I'm curious where "limb" comes from, both in in terms of the history of the word and the reasons for choosing it over something else.

I've seen this:

  • in the Zig standard library's std.math.big
  • in the Rust crypto-bigint crate
  • in the docs for BearSSL, which says "For non-decimal bases, it is traditional to call limbs the individual ai values, intead of 'digits'."

I believe the author, but this is the first time I've seen it so I'm curious. Anyone know where the terminology originally comes from or why "limb" was chosen over other reasonable words?

I've come across multiple sources that use the word "limb" to refer to a chunk of an arbitrary-sized integer. I can understand why "digit" and "word" aren't great names for this, but I'm curious where "limb" comes from, both in in terms of the history of the word and the reasons for choosing it over something else.

I've seen this:

  • in the Zig standard library's std.math.big
  • in the Rust crypto-bigint crate
  • in the docs for BearSSL, which says "For non-decimal bases, it is traditional to call limbs the individual ai values, intead of 'digits'."

I believe the author, but this is the first time I've seen it so I'm curious. Anyone know where the terminology originally comes from or why "limb" was chosen over other reasonable words?

Share Improve this question asked Mar 4 at 2:32 Jim WitscheyJim Witschey 3052 silver badges16 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 2

According to the GNU MP manual 3.2 Nomenclature and Types...

A limb means the part of a multi-precision number that fits in a single machine word. (We chose this word because a limb of the human body is analogous to a digit, only larger, and containing several digits.) Normally a limb is 32 or 64 bits. The C data type for a limb is mp_limb_t.

This text dates back to at least May 1996.

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745064026a4609144.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信