Int có thể lớn đến mức nào?

Tóm lược. trong hướng dẫn này, bạn sẽ tìm hiểu về số nguyên trong Python và cách Python lưu trữ số nguyên trong bộ nhớ

Số nguyên là số nguyên bao gồm số âm, số 0 và số dương như -3, -2, -1, 0, 1, 2, 3

Python sử dụng lớp

Code language: Python [python]
2 để biểu diễn tất cả các số nguyên. Tất cả các số nguyên là đối tượng

Cách máy tính lưu trữ số nguyên

Máy tính không thể lưu trữ số nguyên trực tiếp. Thay vào đó, chúng chỉ có thể lưu trữ các số nhị phân như 0 và 1

Để lưu trữ số nguyên, máy tính cần sử dụng số nhị phân để biểu diễn số nguyên

Ví dụ: để lưu trữ số 5, máy tính cần biểu diễn số đó bằng cơ số 2

5 = 1 x 22 + 0 x 21 + 1 x 20

Như bạn có thể thấy, phải mất 3 bit để lưu số 5 trong bộ nhớ

[101]2 = [5]10

Giả sử bạn có 8 bit, bạn có thể lưu trữ tối đa 255 số nguyên từ 0 đến 255

255= 1x27 + 1x26 + 1x25 + 1x24 + 1x23 + 1x22 + 1x21 + 1x20

Bằng cách sử dụng 8 bit, bạn có thể lưu trữ tới 28 – 1 = 255 số nguyên

Để lưu trữ cả số nguyên âm, số 0 và số nguyên dương, bạn cần dành 1 bit để lưu dấu, âm [-] và dương [+]. Do đó, với 8 bit

  • Số nguyên lớn nhất mà máy tính có thể biểu diễn là 27 = 127
  • Và các máy tính có thể lưu trữ tất cả các số nguyên trong phạm vi [-127, 127]

Vì số 0 không có dấu nên máy tính có thể tạo thêm một số. Do đó, 8 bit có thể lưu trữ tất cả các số nguyên từ -128 đến 127

8 bit = [-27, 27 – 1]

Tương tự, nếu bạn muốn sử dụng 16 bit, 32 bit và 64 bit để lưu trữ số nguyên, phạm vi sẽ là

  • 16-bit ~ [-215, 215 – 1] = [

    Code language: Python [python]
    3,

    Code language: Python [python]
    4]
  • 32-bit ~ [-231, 231 – 1] = [-

    Code language: Python [python]
    5,

    Code language: Python [python]
    6]
  • 64-bit ~ [-263, 263 – 1] = [

    Code language: Python [python]
    7,

    Code language: Python [python]
    8]

Cách Python đại diện cho số nguyên

Các ngôn ngữ lập trình khác như Java và C# sử dụng một số bit cố định để lưu trữ số nguyên

Ví dụ: C# có loại

Code language: Python [python]
2 sử dụng 32 bit và loại

from sys import getsizeof counter = 0 size = getsizeof[counter] print[size] # 24 bytes

Code language: Python [python]
0 sử dụng 64 bit để biểu diễn số nguyên. Dựa trên các kiểu số nguyên, bạn có thể xác định phạm vi của các số nguyên mà các kiểu đó có thể biểu diễn

Tuy nhiên, Python không sử dụng một số bit cố định để lưu trữ số nguyên. Thay vào đó, Python sử dụng một số bit thay đổi để lưu trữ số nguyên. Ví dụ: 8 bit, 16 bit, 32 bit, 64 bit, 128 bit, v.v.

Số nguyên tối đa mà Python có thể biểu diễn phụ thuộc vào bộ nhớ khả dụng

Ngoài ra, số nguyên là đối tượng. Python cần thêm một số byte cố định làm chi phí chung cho mỗi số nguyên

Điều quan trọng cần lưu ý là các số nguyên càng lớn thì các phép tính như ________ 81, ________ 82, … sẽ càng chậm.

Kiểu int trong Python

Phần sau định nghĩa một biến tham chiếu đến một số nguyên và sử dụng hàm

from sys import getsizeof counter = 0 size = getsizeof[counter] print[size] # 24 bytes

Code language: Python [python]
3 để lấy tên lớp của số nguyên

Code language: Python [python]
2

đầu ra

Code language: Python [python]

Như bạn có thể thấy rõ từ đầu ra, một số nguyên là một thể hiện của lớp _______ 02

Lấy kích thước của một số nguyên

Để lấy kích thước của một số nguyên, bạn sử dụng hàm

from sys import getsizeof counter = 0 size = getsizeof[counter] print[size] # 24 bytes

Code language: Python [python]
5 của mô-đun

from sys import getsizeof counter = 0 size = getsizeof[counter] print[size] # 24 bytes

Code language: Python [python]
6

Hàm

from sys import getsizeof counter = 0 size = getsizeof[counter] print[size] # 24 bytes

Code language: Python [python]
5 trả về số byte mà Python sử dụng để biểu diễn một số nguyên. Ví dụ

________số 8

đầu ra

Code language: Python [python]
9

Để lưu trữ số 0, Python sử dụng 24 byte. Vì lưu trữ số 0 nên Python chỉ cần sử dụng 1 bit. Lưu ý rằng 1 byte bằng 8 bit

Do đó, bạn có thể nghĩ rằng Python sử dụng 24 byte làm chi phí lưu trữ đối tượng số nguyên

Sau đây trả về kích thước của số nguyên 100

Code language: Python [python]
0

đầu ra

Code language: Python [python]
1

Nó trả về 28 byte. Vì 24 byte là tổng phí nên Python sử dụng 4 byte để biểu thị số 100

Sau đây là kích thước của số nguyên 264

Code language: Python [python]
2

đầu ra

Code language: Python [python]
3

Vì vậy, để lưu trữ số nguyên 264, Python sử dụng 36 byte

Phép toán số nguyên trong Python

Số nguyên Python hỗ trợ tất cả các hoạt động tiêu chuẩn bao gồm

  • Bổ sung +
  • phép trừ –
  • Phép nhân *
  • Phân công /
  • Số mũ **

Kết quả của phép cộng, phép trừ, phép nhân và số mũ của số nguyên là một số nguyên. Ví dụ

Kích thước tối đa của một int là gì?

Giới hạn về hằng số nguyên

Một số nguyên trong Python có thể lớn đến mức nào trong 64

Số nguyên có dấu 64 bit. Nó có giá trị tối thiểu là -9.223.372.036.854.775.808 và giá trị tối đa là 9.223.372.036.854.775.807 [đã bao gồm] . Số nguyên không dấu 64 bit. Nó có giá trị nhỏ nhất là 0 và giá trị lớn nhất là [2^64]-1 [đã bao gồm].

Chủ Đề