PIC 마이크로 컨트롤러에는 간단한 명령어 세트 형식이 있습니다. 각 명령어는 정확히 14 비트 길이이며 서로 다른 비트 길이의 다양한 숫자로 구성됩니다.숫자를 비트 세트로 묶습니다 (파이썬, 비트 연산)
나는이 모든 입력을 받아 들여 해당 명령을 나타내는 숫자를 만들 수있는 함수를 작성하려고합니다.
def fileRegOp(opcode, d, f):
out = opcode << 13
out = out | d << 7
out = out | f
return out
print "FIN:", bin(fileRegOp(1,True,15))
그것은 출력 FIN
:
이것은 내가 작업을 얻기 위해 노력 해왔다 무엇인가를 제외하고 좋아 보인다 0b10000010001111
비트가 잘못되었습니다. 루프를 포함 SO에 0b00000111111000
내가 본 솔루션은 주위의 비트를 플립,하지만 난 더 나은 방법이있을거야 :
FIN : 나는 그것을 읽고한다고 생각합니다.
이 기능을 작성하는 가장 우아한 방법은 무엇입니까? 명령어 세트에
더 많은 세부 사항 : Datasheet 페이지 121,122