2016-11-07 5 views
0

저는 초보자이며 IGCSE- 컴퓨터 과학 서적을 읽으려고합니다. 여기 나는 다음 질문에 갇혀있다. 나는 가정교사가 없기 때문에 관심이 없으므로 나를 도와주십시오.IGCSE - 일반적으로 비트가 레지스터에서 읽는 방법

자동 진공 청소기에서 2 개의 모터 기능은 8 비트 레지스터의 비트로 해석됩니다.

enter image description here

이제 문제는 레지스터 값 11111111을 포함하는 경우 어떤 일이 일어날 것입니까?

답변

0

이것은 모터 드라이버가 어떻게 구현되는지에 따라 다릅니다. 일반적으로 상호 배타적 인 상태에서

은 즉 대신 모터 B 오프위한 및 하나 모터 B에 대한 비트를 갖는의 우리 만 모터 B/해제 위해 하나의 비트가, 소프트웨어 레벨에서 반사된다.
유효하지 않은 상태 (여기의 모든 상태와 같은)를 허용하고 항상 일관성있는 상태를 유지하기 위해 소프트웨어에 의존하는 하드웨어 인터페이스를 사용하는 것은 드문 일은 아니지만.

그러한 계약을 위반하면 어떤 일이 발생해도 하드웨어가 (기계적으로 또는 전기적으로) 손상되어 선택한 기능에 대한 경쟁 조건을 생성 (즉, 모터를 켜고/끔)하는 것까지 다양 할 수 있습니다.

유효하지 않은 상태를 허용하는 인터페이스가 있으면이를 타협이라고 생각해야합니다. 디자이너는 소프트웨어를 약간 더 복잡하게 만들지 만 하드웨어를 간단하게 만들었습니다. 따라서 하드웨어를 "매우 민감합니다"라고 생각하고 모든 잘못된 상태를 피하십시오.
잘못된 상태의 특정 동작에 대해 궁금한 경우 하드웨어 또는 해당 데이터 시트의 회로도를 확인해야합니다.