Từ 1 tới 10 trên tổng số 10 kết quả

Đề tài: Swith hight and low nibbles in 8-bit integer?

  1. #1
    Ngày gia nhập
    04 2010
    Bài viết
    1

    Mặc định Swith hight and low nibbles in 8-bit integer?

    Tình hình là e mới học C++ nên cần các pro chỉ giáo 1 vài bài:

    - Bài 1: Hoán đổi vị trí của 4bit đầu và 4 bit sau của 1 bye .
    Ví du: 11110000 ---> 00001111
    Note: Đầu vào là 1 byte 8 bit nha không phải là 1 mảng đâu.

    -Bài 2: Xem giùm em cái hàm này làm j`(giải thích giùm em đoạn code luôn nha)

    int abc(Char *p)
    {
    int n=0;
    while(*p!=0) n= 10*n + *p++ -'0';
    return n;
    }

    Bài 3: Xem đoạn code này output cái gì.Có lỗi khôn

    char s[10];
    s="Hello";
    printf(s);

    Thank các pro.:

  2. #2
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    3,007

    PHP Code:
        unsigned char x=132;
        
    _asm
        
    {
            
    rol x,4
        

    ^_,^

    Facebook : https://www.facebook.com/langmaninternet

    Bùi Tấn Quang

  3. #3
    Ngày gia nhập
    11 2010
    Nơi ở
    Black Hole
    Bài viết
    824

    Trích dẫn Nguyên bản được gửi bởi xpizzix Xem bài viết
    Tình hình là e mới học C++ nên cần các pro chỉ giáo 1 vài bài:

    - Bài 1: Hoán đổi vị trí của 4bit đầu và 4 bit sau của 1 bye .
    Ví du: 11110000 ---> 00001111
    Note: Đầu vào là 1 byte 8 bit nha không phải là 1 mảng đâu.

    -Bài 2: Xem giùm em cái hàm này làm j`(giải thích giùm em đoạn code luôn nha)

    int abc(Char *p)
    {
    int n=0;
    while(*p!=0) n= 10*n + *p++ -'0';
    return n;
    }

    Bài 3: Xem đoạn code này output cái gì.Có lỗi khôn

    char s[10];
    s="Hello";
    printf(s);

    Thank các pro.:
    Bài 3:
    lỗi ở printf() , fai là printf("%s\n",s);

    Bài 2 :

    n= 10*n + *p++ -'0';

    *p++-'0' sẽ lấy giá trị ASCII của *p trừ giá trị ASCII của '0',kết quả ra 1 số. sau đó p trỏ đến phần tử tiếp.
    Giá trị n thì bạn hiểu rồi đó

    Bài 1 :
    đợi nghĩ cho kĩ rồi trả lời

    @langmang : code gì vậy? chỉ giáo với bạn

  4. #4
    Ngày gia nhập
    11 2010
    Nơi ở
    Black Hole
    Bài viết
    824

    1010 0010 thành 0010 1010
    hay 0100 0101
    ?

  5. #5
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    3,007

    PHP Code:
    #include <stdio.h>
    #include <conio.h>

    void quay1(unsigned char &x)
    {
        
    _asm{rol x,4}
    }
    void quay2(unsigned char &x)
    {
        
    x=(x<<4)|(x>>4);
    }
    void main()
    {
        
    unsigned char x=50;
        
    quay1(x);
        
    getch();

    ^_,^

    Facebook : https://www.facebook.com/langmaninternet

    Bùi Tấn Quang

  6. #6
    Ngày gia nhập
    04 2010
    Bài viết
    25

    Mặc định Swith hight and low nibbles in 8-bit integer?

    Trích dẫn Nguyên bản được gửi bởi langman Xem bài viết
    PHP Code:
    #include <stdio.h>
    #include <conio.h>

    void quay1(unsigned char &x)
    {
        
    _asm{rol x,4}
    }
    void quay2(unsigned char &x)
    {
        
    x=(x<<4)|(x>>4);
    }
    void main()
    {
        
    unsigned char x=50;
        
    quay1(x);
        
    getch();

    langmang ơi theo mình thì cái code của cậu có vấn đề tý
    mình cho
    PHP Code:
    printf("%x",x);
    quay1(x);
    printf("%x",x); 
    thì giá trị ko đổi
    dáng nhé nếu sau khi thay đổi bit thì giá tri bit cũng thay đổi chứa
    tiền là phù du
    hết tiền là phù mỏ

  7. #7
    Ngày gia nhập
    11 2010
    Bài viết
    3

    bai 3 nhap du lieu va dua ra sai na
    phai nhu the nay
    C++ Code:
    1. #include<fstream.h>
    2. #include<string.h>
    3. void main()
    4. {
    5.     char s[10];
    6.     strcpy(s,"hello");
    7.     cout<<" "<<s;
    8. }

  8. #8
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    3,007

    C Code:
    1. #include <stdio.h>
    2. #include <conio.h>
    3.  
    4. unsigned char quay1(unsigned char x)
    5. {
    6.     _asm{rol x,4}
    7.     return x;
    8. }
    9. void quay2(unsigned char &x)
    10. {
    11.     x=(x<<4)|(x>>4);
    12. }
    13. int quay3(unsigned char n)
    14. {
    15.     return (n>>4)<<4+n>>4;
    16. }  
    17. int quay4(unsigned char n)
    18. {
    19.     return (n<<4)&240+n>>4;
    20. }  
    21. int quay5(unsigned char n)
    22. {
    23.     return ((n&0x0F) << 4) | (n >> 4) ;
    24. }  
    25. int quay6(unsigned char n)
    26. {
    27.     return 16*(n%16)+n/16;
    28. }
    29. int quay7(unsigned char n)
    30. {
    31.     for(int i=0,temp;i<x;i++)
    32.     {
    33.         temp=n&1;
    34.         n>>=1;
    35.         if (temp) n|=0x80;
    36.     }
    37.     return n;
    38.  
    39. }
    40. int quay8(unsigned char n)
    41. {
    42.     _asm
    43.     {
    44.         mov ecx, 4;
    45.         start: rol n, 1
    46.         loop start
    47.     }
    48.     return n;
    49. }
    50.  
    51. void main()
    52. {
    53.     unsigned char x=50;
    54.     printf("%d",x);
    55.  
    56.     printf("%d",quay1(x));
    57.     getch();
    58. }

    C Code:
    1. void quay9(unsigned char &x)
    2. {
    3.     x=x<<4+x>>4;
    4. }
    ^_,^

    Facebook : https://www.facebook.com/langmaninternet

    Bùi Tấn Quang

  9. #9
    Ngày gia nhập
    11 2010
    Nơi ở
    Black Hole
    Bài viết
    824

    Hay nhỉ. Mod có khác. Học thêm dc nhiều thứ
    thanks.

  10. #10
    Ngày gia nhập
    02 2012
    Bài viết
    8

    Trích dẫn Nguyên bản được gửi bởi xpizzix Xem bài viết
    Tình hình là e mới học C++ nên cần các pro chỉ giáo 1 vài bài:

    - Bài 1: Hoán đổi vị trí của 4bit đầu và 4 bit sau của 1 bye .
    Ví du: 11110000 ---> 00001111
    Note: Đầu vào là 1 byte 8 bit nha không phải là 1 mảng đâu.

    -Bài 2: Xem giùm em cái hàm này làm j`(giải thích giùm em đoạn code luôn nha)

    int abc(Char *p)
    {
    int n=0;
    while(*p!=0) n= 10*n + *p++ -'0';
    return n;
    }

    Bài 3: Xem đoạn code này output cái gì.Có lỗi khôn

    char s[10];
    s="Hello";
    printf(s);

    Thank các pro.:
    Bài 3 bạn thiếu s[5]='\0';

Các đề tài tương tự

  1. Bài tập C++ Xin cách ép kiểu qua lại giữa char, String, int, integer
    Gửi bởi hungnt03 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 01-05-2013, 11:24 AM
  2. (Lỗi) iso c++ forbids comparison between pointer and integer
    Gửi bởi axtanh3 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 5
    Bài viết cuối: 06-01-2013, 08:42 PM
  3. Lớp integer trong java được thể hiện như thế nào?
    Gửi bởi ruacon trong diễn đàn Thắc mắc lập trình Java
    Trả lời: 2
    Bài viết cuối: 14-03-2012, 01:22 PM
  4. Sự khác nhau giữa int và integer là gì?
    Gửi bởi vokhuyet984 trong diễn đàn Thảo luận, góp ý code C/C++ của bạn
    Trả lời: 2
    Bài viết cuối: 05-02-2012, 11:49 AM
  5. Hight light đoạn code đang chạy. Nhờ các pro giúp đỡ
    Gửi bởi libach202 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 6
    Bài viết cuối: 19-04-2010, 01:40 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn