int data;
data = 0x8f;
라고 정의 되었다고 가정하고,
0x8f를 비트열로 나열하면 -> 1 0 0 0 1 1 1 1
0번째 비트와 3번째 비트, 4번째 비트, 7번째 비트를 조합하여 1011 -> 0xb 을 만드는 함수를 짜고 싶습니다 좋은 아이디어 있으신분 답글 달아주시면 정말정말정말 감솨하게씀당~ 저도 열뜀히 짜고 있긴한데,,,생각보다 어렵네여~
int data; data = 0x8f; 라고 정의 되었다고 가정하고, 0x8f를 비트열로 나열하면 -> 1 0 0 0 1 1 1 1 0번째 비트와 3번째 비트, 4번째 비트, 7번째 비트를 조합하여 1011 -> 0xb 을 만드는 함수를 짜고 싶습니다 좋은 아이디어 있으신분 답글 달아주시면 정말정말정말 감솨하게씀당~ 저도 열뜀히 짜고 있긴한데,,,생각보다 어렵네여~
0번째, 3번째, 4번째, 7번째 비트의 각각의 마스크를 만들어서 AND연산 한 뒤에 적절히 pow(2, n) 을 곱해서 더해주면 되지 않을까요?
---- Let's shut up and code.
#include <stdio.h> int main() { int data= 0x8f; int mask= 0x99; int r, r2; r= data & mask; r2= ((r>>4)&0x8) | ((r>>2)&0x4) | ((r>>2)&0x2) | (r&0x1); printf("0x%x\n", r2); return 0; }
뭐하는데 쓰시려는 걸까? 숙제는 아니겠죠?
세벌 https://sebuls.blogspot.kr/
적절히 pow(2, n) 을 곱해서 더해주면 되지 않을까요?
pow(2,n) 함수는 머죠?? 첨보는 함수라 전혀~ ㅡ,.ㅡ
꿈은 이루어진다. 그렇지 않다면 신이 우리에게 꿈을 꾸게 만들었을 리가 없다.
숙제는 아니구여..걍 프로그램좀 짜볼라했는데 여기서 막혀버리네여 흉흉~
특정어드레스에서 int형 데이터를 최대 256개까지 읽어들여 비트조합을 해야합니다.
몇개안되면 걍 간단히 짤수 있겠는데 연산할게 많다보니 소스가 길어져서...
제 생각엔 이런식으로 하면 괜찮을지 않을까하는데여..
워낙에 초보라 생각하는게 여기까지 밖에......ㅠ,.ㅠ
main() { int data; unsigned int *addr; data = *addr; bit_combination(data, 3,2,1,0); bit_combination(data, 7,4,2,1); bit_combination(data, 7,4,3,0); } void bif_combination(int data, char bit3, char bit2, char bit1, char bit0) { 연산... }
여기까지 생각해 봤습니다.....더 생각나는데로 바로 올릴게여~ 많은 관심 부탁드려여~감소ㅏ~
Quote:적절히 pow(2, n) 을 곱해서 더해주면 되지 않을까요? pow(2,n) 함수는 머죠?? 첨보는 함수라 전혀~ ㅡ,.ㅡ
2^n 을 구해줍니다.
math.h 에 있죠.
----블로그 / 위키 / 리눅스 스크린샷 갤러리
0번째, 3번째, 4번째, 7번째 비트의 각각의 마스크를 만들어서 AND연산 한 뒤에
10001111 & 10011001 --------------- 10001001 을 어떻게 1011만들져? 휴~ 난감한거...
pow로 적절히 곱해서 더해준다.......연산하려면 뮤쟈게 복잡해지지 않을까여??
흉흉~ 힘들다 힘들오~
나에게 0.0000000001프로의 뇌를 더 활용할 수 있게 도와달라!! 도와달라!!
Quote:0번째, 3번째, 4번째, 7번째 비트의 각각의 마스크를 만들어서 AND연산 한 뒤에 10001111 & 10011001 --------------- 10001001 을 어떻게 1011만들져? 휴~ 난감한거... Quote:적절히 pow(2, n) 을 곱해서 더해주면 되지 않을까요? pow로 적절히 곱해서 더해준다.......연산하려면 뮤쟈게 복잡해지지 않을까여?? 흉흉~ 힘들다 힘들오~ 나에게 0.0000000001프로의 뇌를 더 활용할 수 있게 도와달라!! 도와달라!!
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
Re: 비트조합함수???
0번째, 3번째, 4번째, 7번째 비트의 각각의 마스크를 만들어서 AND연산 한 뒤에
적절히 pow(2, n) 을 곱해서 더해주면 되지 않을까요?
----
Let's shut up and code.
[code:1]#include <stdio.h>int ma
뭐하는데 쓰시려는 걸까? 숙제는 아니겠죠?
세벌 https://sebuls.blogspot.kr/
Re: 비트조합함수???
pow(2,n) 함수는 머죠??
첨보는 함수라 전혀~ ㅡ,.ㅡ
꿈은 이루어진다.
그렇지 않다면 신이 우리에게 꿈을 꾸게 만들었을 리가 없다.
Re: 비트조합함수???
숙제는 아니구여..걍 프로그램좀 짜볼라했는데 여기서 막혀버리네여 흉흉~
특정어드레스에서 int형 데이터를 최대 256개까지 읽어들여 비트조합을 해야합니다.
몇개안되면 걍 간단히 짤수 있겠는데 연산할게 많다보니 소스가 길어져서...
제 생각엔 이런식으로 하면 괜찮을지 않을까하는데여..
워낙에 초보라 생각하는게 여기까지 밖에......ㅠ,.ㅠ
여기까지 생각해 봤습니다.....더 생각나는데로 바로 올릴게여~ 많은 관심 부탁드려여~감소ㅏ~
꿈은 이루어진다.
그렇지 않다면 신이 우리에게 꿈을 꾸게 만들었을 리가 없다.
Re: 비트조합함수???
2^n 을 구해줍니다.
math.h 에 있죠.
----
블로그 / 위키 / 리눅스 스크린샷 갤러리
Re: 비트조합함수???
10001111
& 10011001
---------------
10001001 을 어떻게 1011만들져? 휴~ 난감한거...
pow로 적절히 곱해서 더해준다.......연산하려면 뮤쟈게 복잡해지지 않을까여??
흉흉~ 힘들다 힘들오~
나에게 0.0000000001프로의 뇌를 더 활용할 수 있게 도와달라!! 도와달라!!
꿈은 이루어진다.
그렇지 않다면 신이 우리에게 꿈을 꾸게 만들었을 리가 없다.
Re: 비트조합함수???
pow 함수는 안 써도 됩니다. 제가 답을 다 가르쳐드렸는데 뭘 고민하시나요? 제가 질문을 잘 못 이해 한 건가요?
세벌 https://sebuls.blogspot.kr/
댓글 달기