5: BASIC Stamp Command Reference - BRANCH
BASIC Stamp Programming Manual 2.0c
•
www.parallaxinc.com
•
Page 83
BRANCH
BS1 BS2 BS2e BS2sx BS2p
BRANCH
Offset, ( Address0, Address1, ...AddressN )
BRANCH
Offset, [ Address0, Address1, ...AddressN ]
Function
Go to the address specified by offset (if in range).
•
Offset
is a variable/constant/expression (0 – 255) that specifies the
index of the address, in the list, to branch to (0 – N).
•
Addresses
are labels that specify where to go. BRANCH will ignore
any list entries beyond offset 255.
Quick Facts
BS1
BS2, BS2e, BS2sx and BS2p
Limit of
Address
entries
Limited only by memory
256
Explanation
The BRANCH instruction is useful when you want to write something like
this:
IF value = 0 THEN case_0 ' value =0: go to label "case_0"
IF value = 1 THEN case_1 ' value =1: go to label "case_1"
IF value = 2 THEN case_2 ' value =2: go to label "case_2"
You can use BRANCH to organize this into a single statement:
BRANCH value, [case_0, case_1, case_2]
This works exactly the same as the previous IF...THEN example. If the
value isn’t in range (in this case if value is greater than 2), BRANCH does
nothing and the program continues with the next instruction after
BRANCH.
BRANCH can be teamed with the LOOKDOWN instruction to create a
simplified SELECT CASE statement. See LOOKDOWN for an example.
BS1 syntax not shown here.
1
2
e
2
sx
2
p
2
1
1
NOTE: Expressions are not
allowed as arguments on the BS1.
Table 5.2: BRANCH Quick Facts.
Summary of Contents for BASIC Stamp 2e
Page 1: ...BASIC Stamp Programming Manual Version 2 0c...
Page 34: ...Quick Start Guide Page 32 BASIC Stamp Programming Manual 2 0b www parallaxinc com...
Page 340: ...ASCII Chart Page 338 BASIC Stamp Programming Manual 2 0b www parallaxinc com...
Page 342: ...Reserved Words Page 340 BASIC Stamp Programming Manual 2 0b www parallaxinc com...
Page 346: ...Conversion Formatters Page 344 BASIC Stamp Programming Manual 2 0b www parallaxinc com...