;;; SLA r,adr
MAIN START
LAD GR1,3
- SLA GR1,2
+ SLA GR1,13
RET
END
-;;; SLA r,adr 正数のオーバーフロー
+;;; SLA r,adr オーバーフロー
MAIN START
- LAD GR1,#4000
- SLA GR1,1
+ LAD GR1,3
+ SLA GR1,14
RET
END
;;; SLA r,adr 負数のオーバーフロー
MAIN START
- LAD GR1,#C000
- SLA GR1,1
+ LAD GR1,#8003
+ SLA GR1,14
RET
END
--- /dev/null
+;;; SLA r,adr オーバーフローし、結果は零
+MAIN START
+ LAD GR1,3
+ SLA GR1,15
+ RET
+ END
;;; SLA r,adr 負数
SLA2 START BEGIN
-BEGIN LAD GR1,#8001
- SLA GR1,7
+BEGIN LAD GR1,#8003
+ SLA GR1,13
RET
END
--- /dev/null
+;;; SLA r,adr 結果は零
+MAIN START
+ LAD GR1,2
+ SLA GR1,15
+ RET
+ END
--- /dev/null
+;;; SLL r,adr
+MAIN START
+ LAD GR1,3
+ SLL GR1,13
+ RET
+ END
--- /dev/null
+;;; SLL r,adr 正数のオーバーフロー
+MAIN START
+ LAD GR1,2
+ SLL GR1,15
+ RET
+ END
--- /dev/null
+;;; SLL r,adr 符号フラグオンで、オーバーフロー
+MAIN START
+ LAD GR1,3
+ SLL GR1,15
+ RET
+ END
--- /dev/null
+;;; SLL r,adr オーバーフローし、結果は零
+MAIN START
+ LAD GR1,3
+ SLL GR1,16
+ RET
+ END
--- /dev/null
+;;; SLL r,adr 負数
+SLL2 START BEGIN
+BEGIN LAD GR1,3
+ SLL GR1,14
+ RET
+ END
--- /dev/null
+;;; SLL r,adr 結果は零
+MAIN START
+ LAD GR1,2
+ SLL GR1,17
+ RET
+ END
;;; SRA r,adr
MAIN START
- LAD GR1,12
- SRA GR1,2
+ LAD GR1,#6000
+ SRA GR1,13
RET
END
+++ /dev/null
-SRA2 START BEGIN
-BEGIN LAD GR4,124
- SRA GR4,2
- RET
- END
+++ /dev/null
-SLA2 START BEGIN
-BEGIN LD GR0,X
- SRA GR0,2
- RET
-X DC #7A31
- END
+++ /dev/null
-SRA4 START BEGIN
-BEGIN LD GR0,X
- LD GR1,Y
- SRA GR0,1,GR1
- RET
-X DC #A238
-Y DC 2
- END
+++ /dev/null
-SLA2 START BEGIN
-BEGIN LAD GR1,#FFFD
- SLA GR1,2
- RET
- END
+;;; SRA r,adr 正数のオーバーフロー
MAIN START
- LAD GR1,#4000
- SLA GR1,1
+ LAD GR1,#6000
+ SRA GR1,14
RET
END
--- /dev/null
+;;; SRA r,adr 負数のオーバーフロー
+MAIN START
+ LAD GR1,#A000
+ SRA GR1,14
+ RET
+ END
--- /dev/null
+;;; SRA r,adr オーバーフローし、結果は零
+MAIN START
+ LAD GR1,#6000
+ SRA GR1,15
+ RET
+ END
-SLA2 START BEGIN
-BEGIN LAD GR1,#8000
- SLA GR1,1
+;;; SRA r,adr 負数
+SRA2 START BEGIN
+BEGIN LAD GR1,#A000
+ SRA GR1,13
RET
END
--- /dev/null
+;;; SRA r,adr 結果は零
+MAIN START
+ LAD GR1,#2000
+ SRA GR1,15
+ RET
+ END
+;;; SRL r,adr
MAIN START
LAD GR1,#C000
- SLA GR1,1
+ SRL GR1,14
RET
END
--- /dev/null
+;;; SRL r,adr オーバーフロー
+MAIN START
+ LAD GR1,#C000
+ SRL GR1,15
+ RET
+ END
--- /dev/null
+;;; SRL r,adr オーバーフローし、結果は零
+MAIN START
+ LAD GR1,#C000
+ SRL GR1,16
+ RET
+ END
--- /dev/null
+;;; SRL r,adr 負数
+SRL2 START BEGIN
+BEGIN LAD GR1,#C000
+ SRL GR1,0
+ RET
+ END
+;;; SRL r,adr 結果は零
MAIN START
LAD GR1,#C000
- SLA GR1,1
+ SRL GR1,17
RET
END