부동소수점

포스트: 2
Tags

Posts

2 posts

[bash: bc, if]실수(부동소수점) 수자의 크기 비교

반달가면|2021년 4월 19일

리눅스 bash 스크립트의 if 조건문에서 정수(integer)의 크기 비교는 기본적으로 제공된다. x=2 y=-1 if (( $x > $y )) then echo "x의 값이 y의 값보다 큽니다." fi if [[ $x -gt $y ]] then echo "x의 값이 y의 값보다 큽니다." fi 만약 비교하고자 하는 수자가 실수(부동소수점)인 경우에는 위의 예시와 같은 비교를 할 수 없다. 이럴때는 bc와 조합을 하면 되겠다. 우선 bc와 관련한 아래의 예시를 보자. x=2.34 y=0.45 # x의 값이 y의 값보다 크면 1을 출력, 그렇지 않으면 0을 출력 echo "$x > $y" | bc # x의 값이 y의 값과 같으면 1을 출

amd64 또는 x64 에서의 기계어 분석 #2 (fpu #1)

amd64 또는 x64 에서의 기계어 분석 #2 (fpu #1)

일상사|2018년 1월 23일

이제는 명령어를 살펴본다. 인텔 명령어표를 보면 꽤 복잡해보인다. 명령어도 눈에 익은게 있는 반면 생소한 것도 엄청많다. 명령어의 사용법도 가지가지다. 한눈에 이해가 가는 것도 있지만 어떤건 배경지식없이는 당최 모를 것들도 많다. (앞으로 쓰이는 모든 숫자는 16진 숫자이며 16진수임을 나타내는 h는 빼고 표시한다) 00 = add Eb, Gb ff = inc/dec Grp5-1A 0f 50 = vmovmskps Gy,Ups 0f 38 00 = pshufb Pq,Qp 1바이트 짜리 명령어에 두개의 오퍼랜드를 가지는것에서 부터 2바이트 또는 3바이트 명령어에 두개 또는 세개의 오퍼랜드를 가지는 것도 있다. 인텔에서 사용하는 Eb 나 Qp같은 약어도 뭔지를 알아야 그 명령어를 사용할 수