/* 算術演算なので、第15ビットは送り出されない */
WORD sla(WORD val0, WORD val1)
{
/* 算術演算なので、第15ビットは送り出されない */
WORD sla(WORD val0, WORD val1)
{
/* 空いたビット位置には符号と同じものが入る */
WORD sra(WORD val0, WORD val1)
{
/* 空いたビット位置には符号と同じものが入る */
WORD sra(WORD val0, WORD val1)
{
/* 論理左シフト。フラグを設定して値を返す */
WORD sll(WORD val0, WORD val1)
{
/* 論理左シフト。フラグを設定して値を返す */
WORD sll(WORD val0, WORD val1)
{
/* 論理右シフト。フラグを設定して値を返す */
WORD srl(WORD val0, WORD val1)
{
/* 論理右シフト。フラグを設定して値を返す */
WORD srl(WORD val0, WORD val1)
{
void exec()
{
WORD op, r_r1, x_r2, val;
CMDTYPE cmdtype;
void exec()
{
WORD op, r_r1, x_r2, val;
CMDTYPE cmdtype;
sprintf(errpr, "PR:#%04X", PR);
setcerr(205, errpr); /* Stack Pointer (SP) - cannot allocate stack buffer */
}
sprintf(errpr, "PR:#%04X", PR);
setcerr(205, errpr); /* Stack Pointer (SP) - cannot allocate stack buffer */
}
}
execerr:
fprintf(stderr, "Execute error - %d: %s\n", cerrno, cerrmsg);
}
execerr:
fprintf(stderr, "Execute error - %d: %s\n", cerrno, cerrmsg);