특정 이진 범위에서 난수 생성

한나

10 진수가있는 행렬이 있고이 코드를 사용하여 이진수로 변환 할 수 있다는 것을 알고 있습니다. (IEEE 754 배정 밀도 이진)

m = reshape(dec2bin(typecast(b(:),'uint8'),8).',1,[]);
b_recovered = reshape(typecast(uint8(bin2dec(reshape(m,8,[]).')),'double'),size(b));

이 코드를 사용하면 마지막 8 비트가 가장 중요한 비트라고 생각합니다. 생성 된 난수로 대체 한 후 마지막 8 비트가 변경되지 않으므로 임의의 십진수를 생성하고 이러한 요소를 대체하고 싶습니다. 마지막 8 비트를 유지하면서 새 번호가 필요합니다.

예를 들면 :

b=-1.12;
m=1110110001010001101110000001111010000101111010111111000110111111;

대체 될 :

 m=0000110000000000001110000000011010000001100010000010000110111111;

다음과 같습니다.

b=-1.337678432804527e-04

두 숫자 사이에 임의의 십진수를 생성 할 수 있다는 것을 알고 있지만 위에서 언급 한 문제를 해결하는 방법을 잘 모르겠습니다.

mymatrix(1:q,:)= value2 + (value2-value1).*rand(q,size(y_blk,2));
mpaskov

처음 56 개가 마지막 8 개를 대체하도록 유지

0사이의 정수를 생성하고 255이진수로 변환합니다. 시퀀스의 첫 번째 / 마지막 8 비트를 교체합니다.

b=-1.12;
m = reshape(dec2bin(typecast(b(:),'uint8'),8).',1,[]);
m_small = [dec2bin(randi(256)-1,8), m(9:end)]
m_large = [m(1:end-8),dec2bin(randi(256)-1,8)]
b_small = reshape(typecast(uint8(bin2dec(reshape(m_small,8,[]).')),'double'),size(b));
b_large = reshape(typecast(uint8(bin2dec(reshape(m_large,8,[]).')),'double'),size(b));

의 값은 b_small거의 변하지 않아 처음 8 비트가 최하위임을 나타냅니다. b_large변화는 방대하므로 마지막 8 개가 가장 중요한 비트입니다.


마지막 8 개를 처음 56 개 대신 유지

마지막 8 비트를 유지하고 나머지는 교체하려는 질문을 오해했습니다. 이 경우 56 비트 임의 데이터를 생성하고 저장 한 마지막 8 개를 추가합니다. 이제 Matlab은 최대 int를 생성 할 수 있습니다 2^53. 까지 하나의 정수를 생성하는 대신 2^56각각이 2^87을 생성 하고 연결하십시오.

m_new = [reshape(dec2bin(randi(2^8,[7,1])-1,8),[1,56]), m(end-7:end)]
b_new = reshape(typecast(uint8(bin2dec(reshape(m_new,8,[]).')),'double'),size(b));

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

특정 범위에서 난수 생성

분류에서Dev

특정 범위에서 암호화 된 난수 생성

분류에서Dev

TCL에서 REDUNDANCY없이 지정된 범위 내에서 난수 생성

분류에서Dev

테이블의 특정 열에 대한 난수 생성

분류에서Dev

파이썬에서 범위의 난수를 생성하지만 특정 숫자로 편향되는 방법은 무엇입니까?

분류에서Dev

특정 값의 백분율로 범위 내에서 난수를 생성합니다.

분류에서Dev

Pyspark-열 값의 특정 범위 내에서 난수를 생성하는 방법은 무엇입니까?

분류에서Dev

특정 범위에서 난수를 생성하려면 어떻게해야합니까?

분류에서Dev

루프를 사용하여 정의 된 범위 내에서 난수 생성

분류에서Dev

PHP의 문자열을 기반으로 범위에서 고정 난수 생성

분류에서Dev

주어진 범위에서 임의의 정수 및 실수 생성

분류에서Dev

파이썬에서 역 정상 난수 생성?

분류에서Dev

특정 값을 합한 목록을 사용하여 특정 범위에서 가져온 N 의사 난수 정수 목록 생성

분류에서Dev

특정 범위로 고유 한 난수를 생성하는 방법

분류에서Dev

Matlab : 주어진 확률로 정규 분포에서 난수 생성

분류에서Dev

난수 / 노이즈 생성기에서 생성 된 범위를 좁히는 알고리즘

분류에서Dev

고정 위치에서 난수를 생성하려면

분류에서Dev

사용 가능한 이진 난수 (0 또는 1 반환) 함수를 사용하여 정수 난수 생성

분류에서Dev

Swift 3-2 개의 정수 변수 사이에 난수 생성

분류에서Dev

특정 간격으로 난수 생성

분류에서Dev

가중치 / 편향이있는 범위 사이에서 난수를 생성합니까?

분류에서Dev

루비의 범위 사이에 시드를 사용하여 난수 생성

분류에서Dev

파이썬에서 충분히 '무작위'정도로 여러 난수를 생성하는 방법

분류에서Dev

벡터에서 특정 범위의 난수 선택

분류에서Dev

Java-생성 할 수에 제한이있는 난수 생성

분류에서Dev

범위 내에서 고유 한 난수 생성 및 저장

분류에서Dev

D의 범위 내에서 난수를 생성하는 방법

분류에서Dev

범위 내에서 'n'개의 고유 한 난수 생성

분류에서Dev

다양한 범위에서 난수를 생성하는 방법

Related 관련 기사

  1. 1

    특정 범위에서 난수 생성

  2. 2

    특정 범위에서 암호화 된 난수 생성

  3. 3

    TCL에서 REDUNDANCY없이 지정된 범위 내에서 난수 생성

  4. 4

    테이블의 특정 열에 대한 난수 생성

  5. 5

    파이썬에서 범위의 난수를 생성하지만 특정 숫자로 편향되는 방법은 무엇입니까?

  6. 6

    특정 값의 백분율로 범위 내에서 난수를 생성합니다.

  7. 7

    Pyspark-열 값의 특정 범위 내에서 난수를 생성하는 방법은 무엇입니까?

  8. 8

    특정 범위에서 난수를 생성하려면 어떻게해야합니까?

  9. 9

    루프를 사용하여 정의 된 범위 내에서 난수 생성

  10. 10

    PHP의 문자열을 기반으로 범위에서 고정 난수 생성

  11. 11

    주어진 범위에서 임의의 정수 및 실수 생성

  12. 12

    파이썬에서 역 정상 난수 생성?

  13. 13

    특정 값을 합한 목록을 사용하여 특정 범위에서 가져온 N 의사 난수 정수 목록 생성

  14. 14

    특정 범위로 고유 한 난수를 생성하는 방법

  15. 15

    Matlab : 주어진 확률로 정규 분포에서 난수 생성

  16. 16

    난수 / 노이즈 생성기에서 생성 된 범위를 좁히는 알고리즘

  17. 17

    고정 위치에서 난수를 생성하려면

  18. 18

    사용 가능한 이진 난수 (0 또는 1 반환) 함수를 사용하여 정수 난수 생성

  19. 19

    Swift 3-2 개의 정수 변수 사이에 난수 생성

  20. 20

    특정 간격으로 난수 생성

  21. 21

    가중치 / 편향이있는 범위 사이에서 난수를 생성합니까?

  22. 22

    루비의 범위 사이에 시드를 사용하여 난수 생성

  23. 23

    파이썬에서 충분히 '무작위'정도로 여러 난수를 생성하는 방법

  24. 24

    벡터에서 특정 범위의 난수 선택

  25. 25

    Java-생성 할 수에 제한이있는 난수 생성

  26. 26

    범위 내에서 고유 한 난수 생성 및 저장

  27. 27

    D의 범위 내에서 난수를 생성하는 방법

  28. 28

    범위 내에서 'n'개의 고유 한 난수 생성

  29. 29

    다양한 범위에서 난수를 생성하는 방법

뜨겁다태그

보관