Thông báo

Collapse
No announcement yet.

[HỎI] mã hex và nhị phân 0-1

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • [HỎI] mã hex và nhị phân 0-1

    mình ko chuyên điện tử, đam mê thôi(biết dùng 89c51 và 52). nhưng còn nghèo nàn về lập trình. mình mới tìm hiểu về phần cứng, mô phỏng, vẽ layout,nạp mạch 2 tuần và làm xong led trai tim với code mượn trên google
    nay đang học hỏi thêm lập trình cho vdk ưu tiên lập trình C cho nó trực quan và gon gàng, không như ASM 0 và 1 viết dài dòng mà dễ nhậm lẫn khi phải viết chuơng trình nháy led dài
    thắc mắc của mình là như "tít" đã đưa mã hex và nhị phân
    Ví dụ:
    ORG 0000H
    MAIN:
    MOV P0,#00H
    MOV P2,#00H
    MOV P3,#00H
    LCALL DELAY
    ;**************************** KIEU 1
    MOV P0,#11111111B
    MOV P2,#11111111B
    MOV P3,#01100000B
    LCALL DELAY
    MOV P0,#00000000B
    MOV P2,#00000000B
    MOV P3,#10100000B
    LCALL DELAY
    ...v..v..........
    trong C thường dùng dàng mã như vậy

    unsigned char A[]={0x00,0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff};
    unsigned char B[]={0xff,0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};
    với MOV P0,#11111111B thì dãy số 1 đó chuyễn thành hex như thế nào, nguyên tắc chuyển ra sao. cái này mình phân vân rất nhiều, kiếm tài liệu mà hơi bị khó.
    MOV P3,#01100000B thì có 2 led sáng thì nguyên tác sang mã hex thế nào.
    -mình thấy bên lập trình C toàn sài mã hex chứ ko thấy 1 và 0. và đọc ví dụ về C tuy hiểu sơ câu lệnh, nhưng bó tay (0x00,0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff).
    -0x00,0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff: mấy số sau 0x làm sao mình biết 00 là mở port 1 led 1 sáng, 01 led 2, 03 led 3...

    hoặc có phần mềm nào chuyễn không.

    đừng ném gạch cho người mới bắt đầu

  • #2
    phần mềm chuyển đổi mã có ngay trên tất cả máy tính mà bạn ko biết đó thôi. Cái calculator trong windows (start->all programs->accessories->calculator chuyển chế độ tính scientific) có thể dùng để tính toán cũng như chuyển mã HEX DEC BIN OCT đấy. Máy tính FX570MS và 570ES cũng có thể tính và chuyển mã nữa

    Comment


    • #3
      thanks bạn. mình có biết nhưng lúc đó không biết sài. jiờ test thử bin 10100110 ---> Hex A6. khi ghi trong code là 0xA6 phải hok. nhưng mà nếu 01110000 trong máy tính nó hok nhận giá trị 0 đứng trước thì sao nhỉ.
      Last edited by suinayun; 30-10-2011, 16:22.

      Comment


      • #4
        Nhị phân. Trong ví dụ này là 8 bít ( 8 số 0 hoặc 1 ). Biến thành hex làm như sau :
        Tách ra làm 2 phần, 4 số đầu và 4 số cuối.
        Tra bảng:
        0000-0
        0001-1
        0010-2
        0011-3
        0100-4
        0101-5
        0110-6
        0111-7
        1000-8
        1001-9
        1010-A
        1011-B
        1100-C
        1101-D
        1110-E
        1111-F.
        Rồi ghép vào nhau. Ví dụ 01010010=> tác dc là 0101 và 0010. Tra bảng trên dc hex là : 0x52.
        Hoặc như ví dụ trên là 10100110 tách được 1010 và 0110 => tra bảng dc 0xA6
        Last edited by duong_act; 30-10-2011, 18:09.

        Comment


        • #5
          thanks. đây mới gọi là phương pháp chứ

          Comment


          • #6
            mình mới học lập trình phọt phẹt thôi. khi đọc đến mã hex thì mình chịu. hôm nay đọc được phần này của bạn mới hiểu rõ cách tính mã hex. rất cảm ơn bạn

            Comment


            • #7
              mình mới học lập trình phọt phẹt thôi. khi đọc đến mã hex thì mình chịu. hôm nay đọc được phần này của bạn mới hiểu rõ cách tính mã hex. rất cảm ơn bạn

              Comment


              • #8
                cảm ơn bạn nhiều lắm mình cũng đang thắc mắc về vấn đề này, thì hôm nay mình đã có lời giải, một lần nữa cảm ơn bạn nhiều và chúc bạn gặp nhiều may mắn:
                bạn vui lòng cho mình hỏi thêm, với cách tính ở trên thì mình tính 8 bit, vậy 16 bit thì còn tính như thế nào nữa không xin bạn cho mình cung như các bạn đang học hỏi từ diễn đàn.
                thank you bạn nhiều.

                Comment


                • #9
                  Nguyên văn bởi giusetung71 Xem bài viết
                  cảm ơn bạn nhiều lắm mình cũng đang thắc mắc về vấn đề này, thì hôm nay mình đã có lời giải, một lần nữa cảm ơn bạn nhiều và chúc bạn gặp nhiều may mắn:
                  bạn vui lòng cho mình hỏi thêm, với cách tính ở trên thì mình tính 8 bit, vậy 16 bit thì còn tính như thế nào nữa không xin bạn cho mình cung như các bạn đang học hỏi từ diễn đàn.
                  thank you bạn nhiều.
                  Với 16bits, 32bit, 64bit, nbits.... cũng làm như thế bạn nhé. Cũng tách thành từng cụm 4 số từ cuối lên đầu. Nếu đến cụm cuối cùng mà không đủ 4 số thì thêm số 0 vào trước rồi tra. Sau đó cũng ghép lại.
                  Ví dụ số 16bits: 0b0011000101110110 tách đựoc 0011-0001-0111-0101 = 0x3175.

                  Comment


                  • #10
                    Học thầy không tày học bạn mà! Số trên 4 số cuối là 0110 => 3176H. Chắc bạn Duong_act thử mọi người...

                    Comment

                    Về tác giả

                    Collapse

                    suinayun Tìm hiểu thêm về suinayun

                    Bài viết mới nhất

                    Collapse

                    • bqviet
                      Trả lời cho Đấu tắt điện cho máy tính bảng
                      bởi bqviet
                      Bqv cáo lỗi vì chưa đủ khả năng diễn giải để người đọc hiểu. Người làm kỹ thuật sâu đôi khi như thế đó. Về việc nạp pin không vào dù cell mới, khả năng cái mạch quản lý đó đã hỏng - cũng chính là nguyên nhân đám cell cũ hỏng từ đầu.
                      06-12-2025, 17:17
                    • nguyendinhvan
                      Trả lời cho Xin hỏi về mạch thu FM/AM trong catsette
                      bởi nguyendinhvan
                      Theo tôi, nó chỉ là cái Tuy- ê - nơ, hoặc là khối Trung Văn Tần, nó một phần trong cái Da đì ô thôi. Vì có thấy một chỗ có ba chân hàn, giiống như chân Cờ rít sờ tăng 455 ki nô hẹc. Còn khối Tuy ê nơ thì không nhìn thây cái Di ốt Va di cáp...
                      05-12-2025, 19:59
                    • afrendly
                      Trả lời cho Đấu tắt điện cho máy tính bảng
                      bởi afrendly
                      Có vẻ ngoài hiểu biết của mình rồi. Cuối cùng mình quyết định tìm mua 2 pin trên Shopee, giá 200K thay vào. Tuy nhận pin được 1%, sạc mãi không vào nhưng cũng mở được máy lên. Vậy cũng tạm. Cảm ơn bạn đã hỗ trợ nhé....
                      04-12-2025, 01:27
                    • nick22
                      Trả lời cho Máy điện châm ?
                      bởi nick22
                      Đúng như bạn nói, máy điện châm hiện nay trên thị trường đã khá đa dạng về mẫu mã, chức năng và giá thành.
                      01-12-2025, 13:23
                    Đang tải...
                    X