분류 전체보기 100

[Python] 비트 연산자의 이해 (2) bit shift

비트연산자의 종류는 지난 글에서 설명을 드렸는데요, AND OR XOR NOT은 쉽게 이해할 수 있을 것 같아서 bit shift 연산자에 대해 설명해볼까 합니다. 2023.11.10 - [프로그래밍/Python] - [Python] 연산자의 종류와 사용 예시 [Python] 연산자의 종류와 사용 예시 - 산술 연산자의 종류 = 대입 a = 10 + 더하기 a = 5 + 3 (8) - 빼기 a = 5 - 3 (2) * 곱하기 a = 5 * 3 (15) / 나누기 a = 5 / 3 (1.666666) // 몫 a = 5 // 3 (1) % 나머지 값 a = 5 % 3 (2) ** 제곱 a = 5 ** 3 (125) 일반적인 사칙연 veriln-e.tistory.com - bit shift 사용법 비트 sh..

[Python] 비트 연산자의 이해 (1) 비트와 바이트, 16진수

지난 글 끝부분에 비트연산자의 종류만 언급하고 마무리했는데요, 좀 길어질 것 같아서 몇 차례에 나누어 설명해 볼까 합니다. 2023.11.10 - [프로그래밍/Python] - [Python] 연산자의 종류와 사용 예시 [Python] 연산자의 종류와 사용 예시 - 산술 연산자의 종류 = 대입 a = 10 + 더하기 a = 5 + 3 (8) - 빼기 a = 5 - 3 (2) * 곱하기 a = 5 * 3 (15) / 나누기 a = 5 / 3 (1.666666) // 몫 a = 5 // 3 (1) % 나머지 값 a = 5 % 3 (2) ** 제곱 a = 5 ** 3 (125) 일반적인 사칙연 veriln-e.tistory.com - 비트와 바이트 비트(Bit)는 컴퓨터에서 쓰이는 제일 작은 단위로 0과 1만..

[Python] 연산자의 종류와 사용 예시

- 산술 연산자의 종류 = 대입 a = 10 + 더하기 a = 5 + 3 (8) - 빼기 a = 5 - 3 (2) * 곱하기 a = 5 * 3 (15) / 나누기 a = 5 / 3 (1.666666) // 몫 a = 5 // 3 (1) % 나머지 값 a = 5 % 3 (2) ** 제곱 a = 5 ** 3 (125) 일반적인 사칙연산과 마찬가지로 괄호 안의 연산을 가장 먼저 하고, 곱셈이나 나눗셈이 우선이며, 마지막으로 덧셈과 뺄셈을 하게 됩니다. - 대입 연산자의 종류 += a += 5 a = a + 5 -= a -= 5 a = a - 5 *= a *= 5 a = a * 5 /= a /= 5 a = a / 5 //= a //= 5 a = a // 5 %= a %= 5 a = a % 5 **= a **= ..

[Python] if 문 활용법

if 문은 파이썬뿐 아니라 여러 프로그래밍 언어에서도 활용하는 매우 유용하고 중요한 함수입니다. 그러면 파이썬에서는 어떻게 if 문을 활용하는지 예시를 통해 익혀봅시다. - 알고리즘 설계 우선 프로그램을 만들려면 어떻게 해야 할까요?? 먼저 알고리즘을 짜야합니다. 알고리즘은 특정 업무를 위한 절차나 명령어의 집합을 의미합니다. 예를 들어 1~100까지의 숫자를 input으로 받고, 이 중에서 20에서 29 사이의 숫자가 입력될 때 "참"을 출력하는 프로그램을 작성한다고 해봅시다. 그러면 이 프로그램이 수행되려면 "숫자를 입력받고 > 범위 내에 있는지 비교하고 > "참"을 출력할지 말지를 정한다" 위와 같은 순서의 절차가 계속 반복되어야 합니다. 이러한 절차의 집합이 알고리즘이고 이 알고리즘을 파이썬 같은..

[Python] input 활용법

이전 글에서 변수 a, b에 값을 입력해서 이를 통해 계산을 하고 결과를 출력하는 코드를 작성해 보았습니다. 2023.11.01 - [Ch1 Seminar/IP] - [Python] 1. 사칙연산 계산결과 print [Python] 1. 사칙연산 계산결과 print Python은 최근 인기가 많은 언어로 배우기가 쉽고 결과를 빠르게 확인할 수 있다는 장점이 있습니다. 사이트에서 파일을 받아 설치를 하면 IDLE 프로그램을 확인할 수 있는데 이를 활용해 코딩을 veriln-e.tistory.com 그런데 변수의 값을 코드 내부에서 항상 일일이 바꿔야 할까요?? 함수 input을 활용하면 더 쉽게 코드를 작성할 수 있습니다. - 함수 input 먼저 다음과 같이 스크립트를 작성해서 Run 해봅시다. 코드를 ..

[Python] print 서식

- 서식 표현 방법 숫자는 여러 형태로 나타낼 수 있습니다, 2진법, 10진법, 16진법 등등. %를 활용하여 숫자의 형태를 나타낼 수 있습니다. %d: 정수 (Decimal) %x: 16진수 (Hexadecimal) %o: 8진수 (Octal) %f: 실수(소수점 붙음) %c: 문자 한 글자 %s: 한 글자 이상의 문자열 그렇다면 이를 활용해 print를 해볼까요?? print("15") print("%d" % 15) print("%x" % 15) print("%o" % 15) print("%f" % 15) 그리고 print하려는 수만큼 서식을 넣어줘야합니다. 아래 코드대로 실행해보겠습니다. print("%d %d %d" % (15,30,45)) print 하려는 숫자가 3개라면, %d(또는 %x, %..

[Python] 사칙연산 계산결과 print

Python은 최근 인기가 많은 언어로 배우기가 쉽고 결과를 빠르게 확인할 수 있다는 장점이 있습니다. 사이트에서 파일을 받아 설치를 하면 IDLE 프로그램을 확인할 수 있는데 이를 활용해 코딩을 하면 됩니다. https://www.python.org/ Welcome to Python.org The official home of the Python Programming Language www.python.org - print 사용법 우선 print부터 해볼까요?? print("veriln-e 파이썬 연습") 위의 코드를 입력하고 enter를 누르면 바로 print가 됩니다. print는 숫자, 문자 상관없이 사용하지만 " "을 입력하느냐 입력하지 않느냐에 따라 결과가 달라집니다. print("398*12..

LIN overview (3) Schedule table - 2

지난 글에서 LDF 파일 format 중간정도까지 살펴보았는데요, 이번글로 끝까지 살펴보도록 하겠습니다. 2023.10.16 - [Ch1 Seminar/IP] - LIN overview (3) Schedule table - 1 LIN overview (3) Schedule table - 1 LIN은 overload를 막기 위해 schedule tabe을 통해 모든 통신을 진행합니다. - Time base 한 Frame에는 Header와 Response가 있고 최대 8-byte 통신이 가능하다고 했습니다. 한 Frame 통신당 걸리는 시간이 정해져 있 veriln-e.tistory.com - LDF format 3. Signal definition ::= Signals { [: , , [, ] ;] } 통..

Ch1 Seminar/IP 2023.10.30

LIN overview (3) Schedule table - 1

LIN은 overload를 막기 위해 schedule tabe을 통해 모든 통신을 진행합니다. - Time base한 Frame에는 Header와 Response가 있고 최대 8-byte 통신이 가능하다고 했습니다. 한 Frame 통신당 걸리는 시간이 정해져 있는데, time base를 기반으로 정해집니다. 한 Frame이 진행되는 시간은 time base의 n배이고, 통상적으로 time base는 5ms 또는 10ms입니다. 그러니까 LIN이 굉~~장히 느리다는 거죠. 이전에 LIN protocol overview에서 PID를 통해 모든 통신을 정의한다고 했는데요, LDF 파일을 통해 모든 통신이 사전에 정의됩니다. 2023.10.04 - [Ch1 Seminar/IP] - LIN overview (1)..

Ch1 Seminar/IP 2023.10.16

LIN overview (2) Sleep, Wake up

- SleepLIN 통신에서는 통신이 진행되지 않을 때(일반적으로 4초 이상 LIN 버스가 비활성 상태이면), 전력 소모를 줄이기 위해 절전모드인 Sleep 상태에 들어갑니다. 그리고 다시 통신이 시작될 때 wake up 신호를 통해 Sleep 상태를 해제시킬 수 있습니다. Master는 Slave에 go to sleep 커맨드를 통해 sleep 상태로 전환시킬 수 있습니다(LIN 2.1). PID가 0x3C일 때, 첫 번째 데이터가 0이고 나머지 데이터가 0xFF면 slave는 sleep 상태로 전환됩니다. 정리하자면 LIN controller는 master가 요청하거나 일정시간 이상 LIN bus가 idle 상태이면 sleep 모드로 들어갑니다. - Wake upSleep모드에 있는 장치가 통신을 시..

Ch1 Seminar/IP 2023.10.11