อะไรคือความสำคัญของจำนวนคอลัมน์ (16384) ใน MS Excel 2016


29

ฉันเพิ่งสังเกตเห็นว่าจำนวนคอลัมน์ MS Excel เพิ่มขึ้นจากZZเป็นXFDเช่น 16,384 คอลัมน์ ความสำคัญของคุณค่าเฉพาะนี้คืออะไร? ไม่ได้ไปทำไม MS เพิ่มเติมขึ้นไปZZZ? ทำไมพวกเขาไม่หยุดที่XFD?


1
ไม่ตอบคำถามของคุณอย่างแน่นอน แต่ MS แสดงรายการข้อ จำกัด ของ Excel ที่หลากหลายที่นี่ - support.office.com/en-us/article/ …
เมทริกซ์

2
เป็นการตัดสินใจออกแบบโดยพลการเพื่อรักษาความซับซ้อนภายในขอบเขตที่กำหนดไว้อย่างดี ในทางเทคนิคข้อ จำกัด เพียงอย่างเดียวคือทรัพยากรที่มีอยู่ (หน่วยความจำ CPU)
Daniel B

8
ตามที่ @teylyn ได้อธิบายไว้ในคำตอบของเธอแล้วพลังของ 2 เป็นตัวเลือกทั่วไปในสารสนเทศ แต่ทำไม MS ถึงเลือกค่านี้อาจเป็นไปไม่ได้ที่จะตอบที่นี่ดังนั้นฉันลงคะแนนเพื่อปิดคำถามนี้ตามความเห็นหลัก
MátéJuhász

นอกจากนี้ยังมีstackoverflow.com/questions/526921/…และquora.com/…
Ajasja

3
เป็นที่น่าสังเกตว่าจำนวนคอลัมน์สูงสุดที่กำหนดไว้คือ 16,384 ตั้งแต่อย่างน้อยExcel 2007
Stevoisiak

คำตอบ:


34

ความสำคัญของ 16,384 คือคุณสามารถมีค่าดัชนีคอลัมน์ภายในจาก 0 ถึง 16383 ลองดูสิ่งที่ 16383 อยู่ในไบนารี:

0011 1111 1111 1111

มันสั้น 2 บิตของคำ 16 บิต 1 บิตน่าจะเป็นธงสัมบูรณ์ / สัมพัทธ์ซึ่งทิ้งไว้ 1 บิตเพื่อจุดประสงค์อื่น

หมายเลขแถวคล้ายกัน: ค่าดัชนีสูงสุด 1,048,575 คือ:

0000 0000 0000 1111 1111 1111 1111 1111

สำหรับฉันในฐานะโปรแกรมเมอร์นั้นดูเหมือนว่าจะใช้คำแบบ 32- บิตโดยที่ 20 บิตด้านล่างเป็นดัชนีแถวและ 12 บิตแรกที่ใช้สำหรับอย่างอื่น


1
ทำให้ฉันมีเหตุผลมากกว่านี้
Ooker

9
1,048,576 เป็นพลังแรกของ 2 ที่มากกว่าหนึ่งล้าน ... ดังนั้นตอนนี้คุณสามารถมี "มากกว่าหนึ่งล้านคอลัมน์"
HorusKol

6
และ 16384 เป็นพลังแรกของ 2 ที่มากกว่าหมื่น นั่นอาจเป็นเหตุผลที่ OP กำลังมองหา
ris8_allo_zen0

56

16,384 คือ 2 ^ 14

ในขณะเดียวกันเมื่อคอลัมน์ถูกขยายเป็น 16,384 แถวก็ถูกขยายเป็นมากกว่าหนึ่งล้านคือ 1,048,576

ตัวเลขเหล่านี้เกี่ยวข้องกับสองกำลังของ 14 (2 ^ 14) และสองถึงกำลังของ 20 (2 ^ 20) ตามลำดับดังนั้นความก้าวหน้าตามธรรมชาติ (ตรรกะ) ในระดับของหน่วยความจำคอมพิวเตอร์ที่มีโครงสร้างเริ่มต้นเป็นไบต์ .

เมื่อหน่วยความจำคอมพิวเตอร์เพิ่มขึ้นเป็นไปได้ที่จะสามารถโหลดและประเมินจำนวนแถวและคอลัมน์จำนวนมากขึ้นในหน่วยความจำเพื่อการคำนวณดังนั้นตาราง Excel สามารถเติบโตได้จากข้อ จำกัด ของรุ่นก่อนหน้า

จำนวนสูงสุดสำหรับแถวและคอลัมน์เหล่านี้ได้รับเลือกจากบุคคลที่ออกแบบวิธีการทำงานของ Excel และเป็นไปได้ด้วยการเพิ่มหน่วยความจำคอมพิวเตอร์ พวกเขาสามารถเลือกตัวเลขที่แตกต่างกันได้ แต่จำนวนแถวและคอลัมน์ใน Excel ตั้งแต่เวอร์ชัน 2007 ถูกรูทในกำลัง 2


2
แน่นอน แต่ทำไมไม่ 2 ^ 16 และ 2 ^ 32 (เช่นไบต์และคำ)
Ajasja

12
@Ajasja คุณจะต้องถามทีมพัฒนา Excel เกี่ยวกับเรื่องนี้ ฉันบอกว่าพวกเขาสามารถเลือกตัวเลขที่แตกต่างกันในคำตอบของฉัน ฉันอธิบายเฉพาะที่มาของลวดลายไม่ใช่สาเหตุที่เลือกขนาดของลวดลายนั้น
teylyn

14
ที่จริงแล้วในฐานะที่เป็น Excel Microsoft MVP คุณอยู่ในตำแหน่งที่ดีกว่ามากที่จะถามทีมพัฒนา Excel คำถามนี้เช่นตัวฉันเอง :) ยังเป็น +1
Ajasja

5
หมายเหตุ: การเข้ารหัสของ Excel ส่วนใหญ่เกี่ยวกับการแทนค่าภายในของสูตร: 2 ^ 16 ใช้ไม่ได้กับจำนวนเต็ม 16 บิต: Excel ต้องเก็บการจัดตำแหน่งสัมพัทธ์ด้วยดังนั้นทั้งสองจึงเป็นจำนวนบวกลบ อาจใช้บิตหนึ่งเป็นแฟ
ล็

1
@GiacomoCatenazzi การวางตำแหน่งสัมพัทธ์จะทำงานได้ดีโดยไม่ต้องใช้บิตเฉพาะหากคุณพิจารณาตัวเลขใด ๆ ที่จะนำคุณผ่านคอลัมน์สุดท้ายไปสู่เชิงลบ
Random832
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.