Biến số 101: Biết máy tính của bạn

Đáng buồn thay, tôi thấy rằng không nhiều người muốn học lập trình trong năm 2018 này 🙁 nhưng ngay cả khi tôi chỉ đọc bài trước một người và sau một thời gian ngắn có thể gửi cam kết cho một dự án phần mềm miễn phí, tôi sẽ hài lòng với công việc của mình 🙂

Với những ai yêu thích bảo mật thì mình hứa với các bạn sau đây sẽ là bài chia sẻ về các công cụ bảo mật mong mọi người vui vẻ, nếu ai muốn học thêm cái gì đó (như git, quản trị máy chủ, hay mình chưa biết: p), hoặc để bình luận về một số chủ đề khác mà không thể trả lời một cách đơn giản trong hộp bình luận, cho tôi biết và chúng tôi xem chúng tôi có thể làm việc như thế nào 😉

Vâng, bây giờ nếu chúng ta đi đến vấn đề của mình, trước đây chúng ta đã nói về việc nhập và điều này liên quan đến cách chúng ta lưu các biến của mình trong một chương trình, bây giờ chúng ta sẽ xem xét một chút về những gì xảy ra bên trong và hy vọng nó có thể đủ rõ ràng.

bits

Tôi nghĩ đây là một chủ đề mà tôi luôn chạm đến khi viết về lập trình, chắc chắn đó là điều khiến tôi bị cuốn hút và điều đó đã giúp tôi hiểu ra nhiều điều, bây giờ tôi sẽ cố gắng giải thích một chút về chúng như thế nào, cách đọc và họ để làm gì 🙂

Hãy nghĩ về một công tắc đèn, khi đóng mạch, chúng ta có một 0 trên màn hình, khi chúng tôi thay đổi vị trí của công tắc, vì 1🙂 đơn giản phải không?

Bây giờ một 0 và một 1 Chúng có thể có nhiều ý nghĩa, tất cả phụ thuộc vào sự sáng tạo mà bạn sử dụng, giả sử tôi muốn biết ai đó sẽ đi về miền Bắc hay miền Nam, 1 có thể có nghĩa là phía bắc và 0, sur 🙂 giả sử tôi muốn biết ai đó là đàn ông hay phụ nữ, 1 nó có thể là một người đàn ông và 0, phụ nữ 🙂. Bây giờ tôi muốn biết người này trẻ hay già (> 22), 0 có thể có nghĩa là trẻ và 1, cao hơn. Hãy tiếp tục tưởng tượng… Bạn có vật nuôi nào không? 1 Tôi sẽ nói có, trong khi 0 Tôi sẽ nói không Bây giờ tôi muốn bạn đọc dòng sau cùng tôi:

1001

Đây là cách ngắn gọn để nói ...

Una jóven mujer de no más de 22 años se dirige al norte acompañada de su mascota.

rất khác với:

0110 o Un hombre con más de 22 años de edad se dirige solo hacia el sur.

Bytes

Bây giờ chúng ta hãy tiến thêm một bước nữa, chúng ta hãy học cách đọc byte. Một byte là chuỗi 8 bit, được đọc từ phải sang trái và mỗi 1 đại diện cho sức mạnh của 2 nâng lên n ở đâu n là vị trí bit. Vì nó có vẻ giống tiếng Trung Quốc, hãy cho một ví dụ nhỏ 🙂

01001011 Chúng ta có byte này, bây giờ chúng ta sẽ đi từ phải sang trái (<-) Tôi sẽ đặt chúng từ trên xuống dưới để có thể viết ý nghĩa của chúng:

1: bit khi ở vị trí 0 chỉ ra rằng chúng ta có 2 điều sau đây được nâng lên thành XNUMX hoặc 2^0. Điều này chúng tôi biết tương đương với 1.

1: bit thứ hai, bây giờ là vị trí 12^1 cũng giống như nói 2

0: bit thứ ba ... đây phải là 2^2, nhưng vì nó không được bật, chúng tôi sẽ để nó trên 0

1: bit thứ tư, 2^3 u 8 ????

0: giống như 0

0: khác 0

1: bây giờ chúng tôi đang ở 2^6 o 64

và cuối cùng 0 , chúng tôi đã biết nó có nghĩa là gì 🙂 bây giờ chúng tôi sẽ thêm kết quả của mình và so sánh chúng với bảng sau 🙂 Chúng tôi có 75 vì vậy chúng ta hãy tìm nó trong cột Số Thập Phân và chúng ta sẽ thấy những gì xuất hiện trong Char

Kết quả hình ảnh cho bảng ascii

Chúng tôi có một K!! Xin chúc mừng, bạn đã biết cách đọc trong hệ nhị phân 🙂 Nhưng người hiểu lầm nhất có thể nhận thấy rằng chúng tôi cũng đã thu được một số thập phân và nó có giới hạn (khi tất cả các giá trị là 1) Giới hạn đó được tìm thấy trong số 255.

Từ

Bây giờ nhiều hơn một sẽ cho tôi biết, nhưng nếu tôi cần một số lớn hơn 255? hoặc tôi có thể tìm các ký tự khác như tiếng Nhật ở đâu? Câu trả lời rất đơn giản, chúng ta hãy cùng nhau 2 bytes. Bây giờ chúng ta có hai, số lượng kết hợp có thể có là 2^16 o 65536 kết quả có thể xảy ra, chẳng hạn như 0 là một trong số đó, tối đa có thể là 65535. Con số đó có rung chuông cho ai không? Hãy nhớ số lượng cổng tối đa trên một hệ thống linux? Tôi để họ bài tập về nhà 😉

Từ kép & từ bốn

Để toán học hơn, cũng có các định dạng cụ thể, từ kép chứa, như nhiều người có thể đã tưởng tượng 2 word o 4 bytes (o 32 bits) của thông tin, giống như nói:

11111111111111111111111111111111 để 0 a 4 294 967 295

Đến đây nhiều người sẽ thắc mắc điều gì xảy ra với số âm, tức là chắc hẳn chúng đang được chiêm nghiệm ở đâu đó rồi đúng không? Để có thể lưu trữ một số âm, các nhà phát triển bộ xử lý đã chọn chiếm bit đầu tiên ở bên trái làm giá trị dấu hiệu. Điều này có nghĩa là nếu bit đầu tiên là 0 chúng ta đang nói về một số dương, nhưng nếu nó là 1 chúng tôi có một tiêu cực. Bây giờ hãy xem tại sao các bit lại đặc biệt đến vậy, chúng có thể là bất cứ thứ gì bạn muốn 😀

Nhưng điều này rõ ràng khiến chúng ta có ít vị trí hơn để thực hiện phép nhân! Nên chung tôi0 a 4 294 967 295 trở thành:

-2,147,483,648 a +2,147,483,647

Bây giờ, nhiều người trong chúng ta đã có 64 bitsvà đây là giá trị của bốn từ, chúng tôi có thể có các giá trị khác nhau, từ 0 a 18 446 744 073 709 551 615. Đó là một con số lớn 🙂

Tại sao lại là 8 bit?

Đây là điều mà nhiều người có thể thắc mắc và câu trả lời là ở phần cứng. Ngay từ đầu, bộ xử lý đã cần dữ liệu để có thể thực hiện các hoạt động. Dữ liệu được lưu trong bộ nhớ của máy tính và mỗi khi bộ xử lý yêu cầu, nó sẽ sử dụng các bus dữ liệu để lấy. Trong thời cổ đại, những bus này có thể giao tiếp tối đa 8 bit mỗi chu kỳ, điều này có nghĩa là cách di chuyển dữ liệu tối đa và hiệu quả nhất, là nhóm 8 bit và gửi chúng đến bộ xử lý.

Với thời gian trôi qua, cho đến ngày nay, các bộ xử lý đã phát triển khả năng di chuyển 16 bit, 32 bit và… 64 bit.

Nó liên quan gì đến việc đánh máy?

Bây giờ chúng ta đang ở phần mà tất cả đều có ý nghĩa 🙂 Đánh máy là một thuộc tính mà các ngôn ngữ lập trình sử dụng để đặt tên cho các không gian bộ nhớ này. Tất cả các biến đều có bản sao của chúng ở một trong các loại dữ liệu này, bất kể chúng được gọi là gì. Chúng được gọi là kiểu dữ liệu nguyên thủyMỗi ngôn ngữ được đánh máy mạnh đều có quan niệm về những giá trị này và số lượng mà chúng đại diện. Ví dụ trong C chúng ta có thư viện limits.h cho chúng ta thấy số lượng giá trị nguyên thủy tối đa và tối thiểu.

Hãy xem điều gì sẽ xảy ra nếu chúng ta cố gắng phá vỡ một trong các giá trị:

Sở hữu. Christopher Diaz Riveros

Ở bên phải, chúng ta có các giá trị của tệp limits.h và ở bên trái, chúng tôi đã lấy một trong những giá trị này (unsigned short int) và chúng tôi đã gán một số cao hơn số tương ứng. Kết quả là trình biên dịch cảnh báo chúng ta rằng chúng ta đang sử dụng sai bộ nhớ vì dạng nhị phân của 66666 không thể phù hợp với dạng nhị phân của 65535. Điều này dẫn chúng ta đến một bài học trong hiệu suất khi chúng tôi lập trình, nếu giá trị của bạn không tăng lên nhiều theo thời gian hoặc nếu bạn không yêu cầu các giá trị lớn như giá trị của tăng gấp đôi o bốn từSử dụng đúng loại làm giảm dung lượng bộ nhớ mà CPU yêu cầu, điều này ngụ ý tốc độ lấy dữ liệu lớn hơn nếu nó được tính toán tốt.

Về phía phiên dịch, điều này dễ dàng hơn do chuyển đổi ngầm định. CKhi chúng ta xác định một biến bằng các ngôn ngữ như javascript hoặc Python, trình thông dịch sẽ chịu trách nhiệm hiểu loại biến đó là gì và phân bổ đủ không gian bộ nhớ để thực hiện các hoạt động. Hãy xem một ví dụ đơn giản 🙂

Sở hữu. Christopher Diaz Riveros

Như bạn có thể thấy, chúng tôi không phải giải thích cho trình thông dịch python loại biến của chúng tôi, bởi vì nó phụ trách việc gán một loại và lưu trữ nó trong bộ nhớ

Biết các biến của bạn

Điều này phụ thuộc vào ngôn ngữ và kiểu triển khai mà bạn sẽ sử dụng, nhưng bước đầu tiên để có thể lập trình là tìm hiểu các biến mà bạn có thể sử dụng 🙂 Một khi bạn hiểu các biến, bạn sẽ có thể sử dụng chúng một cách hiệu quả và hợp lý để lưu trữ thông tin (do người dùng hoặc hệ thống cung cấp). Đây là bước đầu tiên trên nấc thang lập trình và hy vọng sau khi đọc bài viết này, bạn sẽ hiểu rõ hơn về cách máy tính của bạn hoạt động và cách nó lưu trữ thông tin. Nó sẽ ở bên mình cho đến bài viết tiếp theo, các bạn nhớ để lại ý kiến ​​xem mình có củng cố thêm hoặc góp ý thêm điểm nào cụ thể nhé. Chúc mừng


41 bình luận, để lại của bạn

Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.

  1.   Luis dijo

    Được viết tốt, ngắn gọn và rõ ràng, đồng thời gây hứng thú cho mọi đối tượng. Công việc tốt.

    1.    ChrisADR dijo

      Cảm ơn bạn rất nhiều, lời chào 🙂

  2.   John Jesus dijo

    Lời giải thích tuyệt vời. Bạn là một cỗ máy.

    1.    ChrisADR dijo

      thanks

  3.   Ruben dijo

    Giải thích rất tốt cảm ơn

    1.    ChrisADR dijo

      Cảm ơn bạn đã đọc nó đầy đủ 🙂

  4.   Diego dijo

    Tuyệt vời, cảm ơn vì đầu vào. Và tận dụng vấn đề nhị phân, có khả năng bạn có thể cung cấp cho chúng tôi một lớp IP, mạng con, v.v. Tôi hiểu rằng đó không phải là một vấn đề lập trình, nhưng một lời giải thích tốt về vấn đề đó luôn đang chờ xử lý.
    Một lần nữa, cảm ơn vì lời giải thích của bạn

    1.    ChrisADR dijo

      Xin chào Diego, có thể làm được 🙂 nói thật là tôi cũng chưa đi sâu vào chủ đề này lắm, nhưng không có cách nào tốt hơn để điều tra ngoài việc tìm kiếm thứ gì đó để chia sẻ về nó trong một bài báo 🙂 Chúng tôi sẽ để nó trong danh sách bởi vì bài viết tiếp theo đã có chủ đề và nó sẽ giải quyết việc làm cứng. Xin chào 🙂

  5.   Peter dijo

    Bạn là một giáo viên xuất sắc, và rất hào phóng khi dạy những gì bạn biết. Xin chúc mừng và cảm ơn bạn.

    1.    ChrisADR dijo

      Cảm ơn Pedro rất nhiều 🙂 Tôi vẫn đang tìm chỗ dạy, tiếc là ở Peru rất khó khi bạn chỉ có bằng chuyên môn kỹ thuật, vì vậy tôi đang xem xét khả năng tiếp tục học đại học ở đây hoặc nơi tôi có thể hoặc thậm chí đăng ký học thạc sĩ ở nước ngoài, ai mà biết được, có thể sẽ sớm nhận được thứ như vậy 🙂 nhưng chắc chắn việc dạy học là điều tạo nên ngày của tôi 🙂 Chúc mừng

  6.   một cái gì đó dijo

    Tôi đã không đọc một lời giải thích tốt hơn về chủ đề này, ví dụ đầu tiên là tuyệt vời

    mặc dù tôi chưa nghe thấy từ đó (như biến 16 bit), từ kép hoặc từ tứ

    không có vấn đề rằng "Tôi đã lập trình", các bài viết thú vị. Nếu có bất kỳ vấn đề nào, bài viết là sử dụng C (limit.h) làm ví dụ về kích thước thay đổi, C có đặc điểm kỹ thuật cụ thể nhất tồn tại

    1.    ChrisADR dijo

      Xin chào thứ gì đó 🙂 cảm ơn bạn rất nhiều, tôi đã đưa ra ví dụ trên đường đi 😛 bởi vì nó chắc chắn là dữ liệu biết cho những người đã đọc một chút về Assembly, và đó là những gì bộ xử lý hiểu 🙂 hahaha chắc chắn C không cụ thể lắm, nhưng tôi nghĩ đó là Do tính di động và các kiến ​​trúc khác nhau mà nó hỗ trợ rất đa dạng nên C phải phù hợp với từng loại bộ xử lý để thực sự di động 🙂
      Xin chào và cảm ơn vì đã chia sẻ.

  7.   Sergio dijo

    Unnn, sẽ rất thú vị nếu loạt bài hướng dẫn này dựa trên gỉ, tôi nghĩ nó là một trong những ngôn ngữ thú vị nhất đang được phát triển hiện nay.
    Tôi đứng sau anh ấy, nhưng tôi nhận ra rằng đó là một ngôn ngữ khó, nhưng với một tương lai tuyệt vời ...
    Tôi mong chờ những bài viết tiếp theo của bạn, chúng thực sự rất thú vị.
    Chúc mừng.

    1.    ChrisADR dijo

      Xin chào Sergio, chắc chắn sẽ rất thú vị, tôi đã nghe nói rằng GNOME đang có kế hoạch triển khai Rust trong bộ chương trình của nó, tôi vẫn chưa nhìn thấy phạm vi đầy đủ mà họ dự định, nhưng một cuộc di chuyển sắp diễn ra.
      Đối với ngôn ngữ, cá nhân tôi vẫn đang học C, tôi muốn có thể bắt đầu phát triển trong hạt nhân trong vài tháng tới và tôi thích học chuyên sâu một vài ngôn ngữ trước khi bắt đầu xem xét các ngôn ngữ mới, nhưng tôi có thể chắc chắn hãy tìm kiếm thứ gì đó thú vị và làm một vài ví dụ trong Rust, vì tài liệu của nó trông khá tốt.
      Xin chào và cảm ơn vì đã chia sẻ 🙂

  8.   David dijo

    Những lời giải thích rất hay, cả trong bài viết này và bài trước. Tôi hy vọng bạn tiếp tục với chủ đề mà tôi thấy rất thú vị này.

    1.    ChrisADR dijo

      Xin chào David, tôi cũng hy vọng sẽ tiếp tục viết và đặc biệt là thúc đẩy mọi người tham gia với phần mềm miễn phí, hiện có rất nhiều dự án và nhu cầu mà có thêm một vài bàn tay để phát triển sẽ rất tuyệt vời 🙂
      Liên quan

  9.   Trung tâm thương mai dijo

    Bạn có thể tạo một bài về máy Turing?

    1.    ChrisADR dijo

      Xin chào Mart 🙂 Tôi nghĩ rằng trong một số bình luận chúng tôi đã chạm vào nó trước đây, phải không? Tôi chắc rằng mình có thể tổng hợp những điều thú vị về chủ đề này 🙂 hãy xem điều gì có thể xuất hiện. Xin chào và cảm ơn các bạn đã đọc hết các bài viết của mình, từ ngày đầu tiên đến hôm nay mình luôn thấy các bạn khá quan tâm 🙂

  10.   ALLAN LARA dijo

    Wow, cảm ơn bạn rất nhiều vì một lời giải thích hay.

    Liên quan

    1.    ChrisADR dijo

      Cảm ơn Allan rất nhiều 🙂 trân trọng

  11.   ramon hidalgo dijo

    Tôi đã đọc bài viết trước của bạn! Cảm ơn bạn rất nhiều về lời giải thích, mặc dù tôi nghĩ rằng tôi sẽ không bao giờ hiểu hết từ này.

    1.    ChrisADR dijo

      Chào Ramon 🙂 cảm ơn bạn rất nhiều vì đã đọc cả hai. Nếu nó có ích lợi gì, thì «từ» là sự phát triển của một byte, nó giống như các bộ xử lý, trước khi có 8-bit, sau 16-bit, v.v. điều này là do mỗi lần chúng ta cần thêm dung lượng để quy trình và tốc độ hoặc sức mạnh tốt hơn ... 'từ' được sinh ra bởi vì không gian của 'byte' ngắn lại, và cũng giống như từ 'gấp đôi' và 'tứ' 🙂 chính sự tiến hóa tự nhiên khiến chúng ta thêm sức mạnh và không gian để tiếp tục phát triển 🙂

      Liên quan

  12.   Vô danh dijo

    2018 này tôi học cách lập trình có hoặc có, cảm ơn bạn

    1.    ChrisADR dijo

      Tôi rất vui vì 🙂 cố gắng lên !! Chúc mừng

  13.   Guillermo dijo

    Cảm ơn bạn rất nhiều, giữ nó lên. Tôi đã biết cách lập trình nhưng tôi chờ đợi sự chỉ dạy của bạn, rằng lập trình tự học của tôi đầy rẫy những cách làm không tốt.

    1.    ChrisADR dijo

      Cảm ơn Guillermo 🙂 Tôi hy vọng bạn cũng tìm thấy những điều thú vị trong những bài viết sau 🙂 Xin chào

  14.   Edgar dijo

    Một lời giải thích đơn giản luôn là tốt nhất .. tuyệt vời ..
    Tôi sẽ đề xuất git ... cho các lập trình viên, điều cơ bản khi bạn muốn làm việc theo nhóm và sắp xếp công việc của mình theo thứ tự .. các phiên bản ..

    1.    ChrisADR dijo

      Rất đúng Edgar, tôi sẽ cố gắng đăng nội dung về nó, mặc dù khá khó để nói điều gì đó mới vì tài liệu git đã rất nhiều và một số thứ đã được dịch sang nhiều thứ tiếng. Tôi sẽ thấy những gì tôi có thể làm, lời chào và cảm ơn vì đã chia sẻ

  15.   tiriri dijo

    Xin chào, số từ 0 đến 18 446 744 073 709 551 615 tương ứng với giá trị thập phân 64 bit hay nó quy về một giá trị khác? À, tính lũy thừa 2 ^ 64 thì kết quả mình nhận được là: 18 446 744 073 709 552.

    1.    ChrisADR dijo

      Xin chào Tiririri, tôi nghĩ rằng bạn đang gặp sự cố làm tròn, bạn có thể thử sử dụng lệnh bc? là một ngôn ngữ lập trình được thiết kế để chính xác nhất có thể, một khi đã ở bên trong nó thì chỉ cần 2^64, có lẽ điều đó sẽ giải quyết được nó 🙂 hãy cho tôi biết nó diễn ra như thế nào, lời chào

      . Giá trị thực là 18 446 744 073 709 551 616, nhưng chúng tôi đang trừ đi 1 vì 0 được tính là một giá trị có thể 🙂

      1.    tiriri dijo

        Cảm ơn, tôi đã tính toán điều đó bằng một máy tính công suất mà tôi tìm thấy trên mạng (https://es.calcuworld.com/calculadoras-matematicas/potencias/) và đó là kết quả mà nó mang lại cho tôi.
        Và vâng, tôi đã thử lệnh bc, và nó mang lại hiệu quả cho tôi giá trị mà bạn đã viết ra.

  16.   tiriri dijo

    Xin chào một lần nữa, hình ảnh mà bạn đề cập đến thư viện giới hạn. H rất nhỏ và không thể đọc được (ít nhất là tôi không thể đọc nó, vì tôi thấy rằng mọi người đã làm, có vẻ như), và vì tôi không hiểu nó Tôi không còn tiếp tục đọc. Tôi không biết nếu bạn có thể thay đổi nó, tôi hy vọng tôi đã không làm phiền bạn với điều đó.

    1.    ChrisADR dijo

      Bạn có thể thử phiên bản dành cho thiết bị di động, những cái đó trông rõ ràng hơn một chút, đó là một chủ đề wordpress: / mặt khác, tất cả các tiêu đề C có thể được tìm thấy trong / usr / include /, trong trường hợp này bạn có thể chọn đọc trực tiếp nếu bạn nó dễ dàng hơn 🙂 Tôi sẽ cố gắng tải lên một hình ảnh lớn hơn để xem nó có hữu ích không 🙂

      1.    tiriri dijo

        Cảm ơn, tôi nghĩ tôi nên kiên nhẫn với điều này, heh heh.

  17.   katekyo dijo

    Cảm ơn bài viết vì bây giờ tôi đã hiểu rõ hơn một chút về các biến và phạm vi biểu diễn của một ngôn ngữ và bây giờ tôi nghĩ rằng tôi nên bắt đầu sử dụng thư viện "stdint.h" vì họ khuyên bạn nên sử dụng nó khi lập trình bằng c kể từ khi tôi có được dạy cho trường cũ vì trí nhớ rất quý giá và người ta phải cẩn thận với những gì được sử dụng

    1.    ChrisADR dijo

      Không có lý do gì đối với Katekyo, chắc chắn tốt hơn là sử dụng thư viện chuẩn, nhưng tôi có thể đảm bảo với bạn rằng tốt hơn là biết điều gì phân biệt uint_least8_t với uint_fast8_t và điều đó đạt được bằng cách biết các kiểu dữ liệu nguyên thủy, đó là mục tiêu của bài viết 🙂 Rất cám ơn bạn đã comment và đọc bài viết, lời chào

  18.   kẻ thắng cuộc dijo

    : Hay một lời giải thích tuyệt vời! Tôi đã biết một phần các khái niệm nhưng tôi nhận được rất nhiều kiến ​​thức mới từ bài đăng này

    1.    ChrisADR dijo

      Cảm ơn bạn Victor rất nhiều good bài báo có ích gì đó rất tốt, lời chào

  19.   Guille dijo

    Tôi thực sự thích Python để làm cho việc lập trình dễ dàng hơn, tôi đã xem một khóa học về http://zetcode.com/gui/pyqt4/ Tôi yêu thích tứ kết cuối cùng của: http://zetcode.com/gui/pyqt4/thetetrisgame/
    Tetris này tôi đã chỉnh sửa lại trong một mùa hè để đặt điểm, nhiều người chơi và âm nhạc, từng chút một, nhưng rất thú vị.

    1.    ChrisADR dijo

      Xin chào Guille, chắc chắn rất thú vị khi thấy phần mềm bạn đang làm việc phát triển từng chút một 🙂 đó là một trải nghiệm không thể so sánh được và hơn thế nữa khi ai đó nhận thấy những gì bạn đang phát triển hữu ích, đó là từ một thế giới khác 😀 cảm ơn bạn rất nhiều để chia sẻ 🙂

      1.    Guille dijo

        Tôi đã tải lên (30Mb cho âm nhạc) lên http://guillermo.molleda.com/Tetris9.7z
        Bạn phải định cấu hình tốc độ ban đầu khác nhau cho mỗi người chơi hoặc nếu bạn bắt đầu lại điểm sau một trò chơi mới,… và có ba người chơi để hai con gái của tôi chơi với tôi. Nó thậm chí còn gây nghiện.