1
00:00:00,390 --> 00:00:01,030
Hello.

2
00:00:01,110 --> 00:00:02,310
Welcome back.

3
00:00:02,310 --> 00:00:09,250
The cortex and family differs from earlier designs like the arm 70 then my buddy program this model

4
00:00:09,260 --> 00:00:11,330
is remarkably similar.

5
00:00:11,370 --> 00:00:18,120
The process of course are very small generally for the cortex and family members and it's implement

6
00:00:18,180 --> 00:00:19,590
only some of them.

7
00:00:19,590 --> 00:00:25,100
Some of the cortex end process or implement only a subset of the instruction set.

8
00:00:25,110 --> 00:00:31,920
What if some instruction sets the cortex has fewer physical registers compared to the 70 TMI.

9
00:00:31,980 --> 00:00:40,080
However the 16 registers in the seven TDM I use a mode are the same as the first 16 registers of the

10
00:00:40,080 --> 00:00:49,560
cortex and register bank the cortex M has 17 general purpose registers 1 status register and 3 interrupt

11
00:00:49,560 --> 00:00:56,250
mask registers are 0 through are twelve are the general purpose registers these registers as we discussed

12
00:00:56,340 --> 00:01:02,880
earlier can hold any value you want they can hold in a set to bids value in fact they can hold time

13
00:01:02,880 --> 00:01:09,990
of values variables if undesired in a field tell you can keep the fields of coefficients in them acts

14
00:01:10,000 --> 00:01:17,610
of terror are 13 are 13 over here is known as the young the stock point to register and it is a special

15
00:01:17,610 --> 00:01:24,330
function register the stock point register is actually banked as we shall see there is the main stack

16
00:01:24,330 --> 00:01:30,480
pointer and the arm there is the main stack pointer and the process that pointer It's a bank to register

17
00:01:30,540 --> 00:01:37,530
our 13 over here there is the MSP and the PSP the MSP use the main stack pointer and the PSP is the

18
00:01:37,530 --> 00:01:44,320
process stack pointer our 14 is the link register and it is also a special function register it hosts

19
00:01:44,320 --> 00:01:50,700
the return address off a subroutine or an exception AR 15 as the program counter register it is the

20
00:01:50,700 --> 00:01:57,880
third special function register and it points to the instruction being fetched in the pipeline the express

21
00:01:57,880 --> 00:02:03,900
our register is known as the program status register and you will understand why we have X here in a

22
00:02:03,900 --> 00:02:11,010
minute the Express are the prime mosque the fourth mosque the base PRI and the control registers are

23
00:02:11,010 --> 00:02:17,220
special registers these registers are different from the special function registers and because they

24
00:02:17,240 --> 00:02:23,760
are special registers we have to access them using special instructions such as the MRF which is used

25
00:02:23,760 --> 00:02:30,210
to read from a special register and the MSR which is used to write into a special register which we

26
00:02:30,210 --> 00:02:37,590
shall experiment with the X PSR performs the same function as the CPS are indeed serving today my process

27
00:02:37,590 --> 00:02:45,690
all but with different fields the entire register can be accessed once or you can examine it in three

28
00:02:45,690 --> 00:02:55,560
different ways the Express are is actually three registers D they are the API are the PSR and the IP

29
00:02:55,560 --> 00:03:03,060
yes are the AP s are simply stands for the application program status register the PSR means the execution

30
00:03:03,060 --> 00:03:10,660
program status register and the IP SA means the interrupt program status register the AP SAR the EPA

31
00:03:10,780 --> 00:03:18,000
are and the IPA are are just specialized for use of the same register the APIs are contains the status

32
00:03:18,000 --> 00:03:26,850
flags and C and the greater than or equal flags and another flag known as the sticky flag the Q flag

33
00:03:27,450 --> 00:03:34,020
used in saturation arithmetic which we shall be working with sticky means that the bids can only be

34
00:03:34,020 --> 00:03:42,210
cleared by explicitly write in 0 2 this bit the IPA SA contains only an exception number that can be

35
00:03:42,210 --> 00:03:50,070
used in handling forms and other types of exceptions the EPA SA contains the I T also known as the if

36
00:03:50,070 --> 00:03:57,680
den bit which overlaps with the interrupt continuation bids it also has the bits known as the T bit

37
00:03:58,060 --> 00:04:06,840
and this t that stands for the thumb bit in future sections we shall use the D I T bit the IFT in in

38
00:04:06,920 --> 00:04:09,600
our loops when we start coding.

39
00:04:09,630 --> 00:04:16,020
So in summary the end bit is called the negative bit and it sets high when every sort is negative the

40
00:04:16,020 --> 00:04:22,980
C is known as D zero bits and it sets high when a result is equal to zero the C is known as the carry

41
00:04:22,980 --> 00:04:26,390
bit V is the overflow bit and so on.

42
00:04:26,550 --> 00:04:30,900
We shall explain these flags further when we applying them in our code.

43
00:04:31,050 --> 00:04:34,740
So this is all there is to it and I'll see you in the next lesson.
