TAOCP 1
 2.1 ~ 2.2.1

          twitter.com/jun0683
2



2.1

2.2
2.1
2.1

2

              ,



      ,   ,       ,
2.1

     ,       ,
,        ,       ,
2.1
2.1
                           +      TAG SUIT RANK    NEXT
)                          +               TITLE
              TAG, SUIT, RANK, NEXT, TITLE
2

    TAG = 1               , TAG = 0

    SUIT = 1,2,3,4         ,          ,   ,

    RANK = 1,2 ~      ,

    NEXT

    TITLE
2.1




100   Next         “Λ”
2.1




RANK(100) = 10
SUIT(TOP) = 2
TITLE(TOP) = “__2__D”
RANK(NEXT(TOP)) = 3
2.1

A1. NEXT(NEWCARD) <- TOP (                        )
A2. TOP <- NEWCARD       (TOP                 )
A3. TAG(TOP) <- 0         (     “     ”   )




B1. N <- 0, X <- TOP       (N        ,X   )
B2.       X=Λ          ,N
B3. N <- N+1, X <- NEXT(X)      B2
2.1


CONTENTS
  V         , CONTENTS(V)                 V

  C   ‘*‘         ex) int *p = &val; printf(“%d”,*p);


LOC
  V                      , LOC(V)

  C   ‘&‘         ex) int val = 10; printf(“%p”,&val);
2.1

A   MIXAL
2.1

            +   TAG SUIT RANK    NEXT
            +            TITLE


1. [04]
        (a) SUIT(NEXT(TOP))             (b)
  NEXT(NEXT(NEXT(TOP)))                       ?
2.1
          +   TAG SUIT RANK    NEXT
          +            TITLE

1. [04]
          (a) SUIT(NEXT(TOP))         (b)
  NEXT(NEXT(NEXT(TOP)))                     ?

   •4
   •Λ
2.1
                                    +   TAG   SUIT   RANK    NEXT

                                    +                TITLE




7.               MIX        (5)                              TOP
      MIX
                 TOP    . (1)
                        NEXT(TOP)                            A
                          ?


     a) LDA TOP(NEXT)     b) LD1 TOP
                             LDA 0,1(NEXT)
2.1

         TOP                         123
            +              123       +   0   4     4      200

                                     +           xxxxxx



a) LDA TOP(NEXT)

a)      TOP           ,          A   NEXT(LOC(TOP))             ,
                   , TOP

b) LD1 TOP
   LDA 0,1(NEXT)
b)                     ,
2.2

2.2.1   ,     ,
2.2



n>= 0          X[1],X[2]... ,X[n]



n>0     X[1]                 X[n]
2.2

i.        k         ,

ii. k

iii.k

iv.

v. ....
2.2
2.2

(stack)



  (queue)




(deque)
2.2

    (LIFO)

,




    (FIFO)
2.2

2.                                 1                                         .
                                   1,2,3,4   .


        (i)       1               (ii) 2             (iii)    2           (iv)       3       (v)
              4                (vi)    4     (vii)      3           (viii) 1

                           ,                                 1234         2431           .
                                                                           ,
                                                         .

                      123456                                                     ,
     325641                                   ? 154623                                       ?
2.2
325641

1         ,2           ,3             ,3

2    ,4         ,5               ,5

6         ,6    ,4          ,1

154623

1         ,1    ,2               ,3

4         ,5           ,5        ,4

6         ,6    , ?!
2.2


14.

      ?
2.2


1             2

2       1             .

1                 2
    .

Taocp 2.1~2.2

  • 1.
    TAOCP 1 2.1~ 2.2.1 twitter.com/jun0683
  • 2.
  • 3.
  • 4.
    2.1 2 , , , ,
  • 5.
    2.1 , , , , ,
  • 6.
  • 7.
    2.1 + TAG SUIT RANK NEXT ) + TITLE TAG, SUIT, RANK, NEXT, TITLE 2 TAG = 1 , TAG = 0 SUIT = 1,2,3,4 , , , RANK = 1,2 ~ , NEXT TITLE
  • 8.
    2.1 100 Next “Λ”
  • 9.
    2.1 RANK(100) = 10 SUIT(TOP)= 2 TITLE(TOP) = “__2__D” RANK(NEXT(TOP)) = 3
  • 10.
    2.1 A1. NEXT(NEWCARD) <-TOP ( ) A2. TOP <- NEWCARD (TOP ) A3. TAG(TOP) <- 0 ( “ ” ) B1. N <- 0, X <- TOP (N ,X ) B2. X=Λ ,N B3. N <- N+1, X <- NEXT(X) B2
  • 11.
    2.1 CONTENTS V , CONTENTS(V) V C ‘*‘ ex) int *p = &val; printf(“%d”,*p); LOC V , LOC(V) C ‘&‘ ex) int val = 10; printf(“%p”,&val);
  • 12.
    2.1 A MIXAL
  • 13.
    2.1 + TAG SUIT RANK NEXT + TITLE 1. [04] (a) SUIT(NEXT(TOP)) (b) NEXT(NEXT(NEXT(TOP))) ?
  • 14.
    2.1 + TAG SUIT RANK NEXT + TITLE 1. [04] (a) SUIT(NEXT(TOP)) (b) NEXT(NEXT(NEXT(TOP))) ? •4 •Λ
  • 15.
    2.1 + TAG SUIT RANK NEXT + TITLE 7. MIX (5) TOP MIX TOP . (1) NEXT(TOP) A ? a) LDA TOP(NEXT) b) LD1 TOP LDA 0,1(NEXT)
  • 16.
    2.1 TOP 123 + 123 + 0 4 4 200 + xxxxxx a) LDA TOP(NEXT) a) TOP , A NEXT(LOC(TOP)) , , TOP b) LD1 TOP LDA 0,1(NEXT) b) ,
  • 17.
  • 18.
    2.2 n>= 0 X[1],X[2]... ,X[n] n>0 X[1] X[n]
  • 19.
    2.2 i. k , ii. k iii.k iv. v. ....
  • 20.
  • 21.
  • 22.
    2.2 (LIFO) , (FIFO)
  • 23.
    2.2 2. 1 . 1,2,3,4 . (i) 1 (ii) 2 (iii) 2 (iv) 3 (v) 4 (vi) 4 (vii) 3 (viii) 1 , 1234 2431 . , . 123456 , 325641 ? 154623 ?
  • 24.
    2.2 325641 1 ,2 ,3 ,3 2 ,4 ,5 ,5 6 ,6 ,4 ,1 154623 1 ,1 ,2 ,3 4 ,5 ,5 ,4 6 ,6 , ?!
  • 25.
  • 26.
    2.2 1 2 2 1 . 1 2 .